c语言课程设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言程序设计B
课程设计报告
设计题目:学生成绩管理系统年级班级:
学号:
姓名:
指导教师:
2020 年 6 月 18 日
目录
一、设计目的 (3)
二、课程设计内容和要求 (4)
三、总体设计 (5)
四、主要步骤 (12)
五、功能实现 (13)
六、功能测试 (64)
七、评价程序 (83)
八、课程设计体会 (84)
一、设计目的
程序设计能力是当代理工类大学生的必备能力,当学生学习了C语言之后,编程能力远远不能达到开发实际应用程序的要求,特备是对其中的指针、结构体、链表和文件部分的理解和应用都比较弱。
程序设计的目的是通过对面向过程的学习,将C语言的主要知识点进行综合,针对提高学生C语言程序设计能力,强化编写较大的应用软件能力,熟练运用已掌握的知识解决实际需要解决的问题,以达到更加熟知指针、链表、结构体、文件读取、标准库的使用。
主要目的为以下几点:
1、熟练掌握面向过程(结构化)程序设计基本知识;
2、综合运用所学知识解决实际问题;
3、受到面向过程(结构化)程序设计的基本训练;
4、体会面向过程(结构化)开发程序的过程。
二、课程设计内容和要求
1.课程设计内容:
学生通过使用C语言进行编写算法,开发学生成绩管理系统,以实现对学生成绩的管理。
2.课程设计要求
1)具有菜单,可以在菜单上进行选择;
2)能实现学生数据录入、修改、删除、查询;
3)能实现数据排序;
4)有数据输出功能;
5)有数据读取与存储功能;
6)一个学生的数据(称为:每条记录)包含姓名、学号、语文、数
学、英语、总分、名次等信息;
7)以结构方式存储每条记录;
8)多条记录以链表方式存储到内存;
9)随时可将全部数据存储到磁盘文件中,方便下次从磁盘读取数据。
三、总体设计
1.主函数的结构:
2.用户的需求分析:
学生成绩管理系统面向的用户群体分为两类:学生和教师。
对于学生:由于教务处的规定,原则上,系统对学生群体只开放“查看成绩”和“打印成绩”这两个版块的功能。
对于教师:由于工作上的需求,系统对教师开放全部功能,包括“添加学生”、“查找学生”、“删除学生”、“修改信息”、“成绩排序”、“打印成绩”等全部版块的功能。
3.版块设计:
1.系统用户选择界面:
在使用该系统的时候,需要先进行“注册账号”,之后才能“登陆账号”,进行之后的一系列操作;若已有账号,则直接进行“登陆账号”即可。
流程图如下:
(用户账号选择界面)
流程图说明:用户有两条途径可以到达下一步“用户选择界面”:
1.直接“登录账户”,输入账号密码,程序进行“循环判断”
直至遍历所有“已存在的账号密码”,若成功,则继续;若失败,
则重新输入账号密码。
2.先“注册账户”,再进行“登陆账户”,用户在进行注册账户
时,程序会对用户输入的账号进行判断“是否注册”,若不存
在。则进行下一步输入密码,登陆账号;若存在,则提示“
账号已存在,请重新输入或者直接登陆”。
(用户身份选择界面)
流程图说明:在用户选择“用户身份”时,会有两个选择:
1.选择“学生身份”,之后选择班级后,进入到学生菜单进行
下一步操作,之后退出系统;
2.选择“教师身份”,在选择班级后,用户在进入“教师”菜
单之前,会被要求“输入教师系统密码”,该密码由学校教
务处设定,若用户输入正确教师系统密码,则进入到“教
师菜单”;若用户输入错误,则会直接进入到“退出系统”。
程序不允许用户进行“多次输入密码”的操作,目的是为了
保证“学生信息的安全”。
2.学生/教师菜单:
(学生菜单)
流程图说明:在用户选择“学生身份”后,会进入到“学生菜单界面”,会有3个选择:
1、进行查找学生操作,在完成操作后,会“返回至学生
菜单界面”;
2、进行打印成绩操作,在完成操作后,会“返回至学生
菜单界面”;
3、退出系统。
4、根据“学生群体的需求”和学校教务处的规定,系统对
“学生身份”的用户只开放“查找学生”和“打印成绩”
功能,其他功能暂不对学生开放,若学生有其他需要,
可与所在班级的教师联系;但是系统对“学生群体”不
限制使用功能的次数,因此学生可以在系统开放的时间
段内无限次的使用所开放的功能。
(教师界面)
流程图说明:在用户成功进入到“教师菜单界面”后,会有8项功能可以选择:
添加学生、查找学生、删除学生、保存信息、修改学生、
成绩排序、打印成绩、退出系统。
1.在教师进行“添加学生、删除学生”的操作后,系统会
自动进行“成绩排序”操作,目的是为了方便教师对学
生成绩的进一步管理;但是在进行“修改学生”后,不
会进行“成绩排序”操作,原因是根据一些学校的相关
规定,以及高考的相关制度,“学生在对成绩提出有异议
后,会对该学生的成绩进行复查,若情况属实,对其成
绩予以改正,但是排名/位次不予以修改”。
2.教师在进行完对“学生成绩”的相关工作后,要及时进
行“保存信息”操作,否则系统默认“不保存”。