C语言课程设计(成绩管理系统)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、课程设计的内容

(1)信息维护:

要求:学生信息数据要以文件的形式保存,能实现学生信息数据的维护。此模块包括子模块有:增加学生信息、删除学生信息、修改学生信息

(2)信息查询:

要求:查询时可实现按姓名查询、按学号查询

(3)成绩统计:

要求:A输入任意的一个课程名(如数学)和一个分数段(如60--70),统计出在此分数段的学生情况。

(4)排序:能对用户指定的任意课程名,按成绩升序或降序排列学生数据并显示排序结果(使用表格的形式显示排序后的输出结果)(使用多种方法排序者,加分)

(二)其它要求:

(1)只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读

(2)至少采用文本菜单界面(如果能采用图形菜单界面更好)

(3)学生可自动增加新功能模块(视情况可另外加分)

(4)写出课程设计报告,具体要求见相关说明文档

二、课程设计的要求与数据

1、进一步掌握和利用C语言进行程设计的能力;

2、进一步理解和运用结构化程序设计的思想和方法;

3、初步掌握开发一个小型实用系统的基本方法;

4、学会调试一个较长程序的基本方法;

5、学会利用流程图或N-S图表示算法;

6、掌握书写程序设计开发文档的能力。

三、课程设计应完成的工作

1、编写完成相应题目的程序;

2、编写课程设计报告,课程设计报告的内容应包括以下6个部分:

1) 需求分析:包括设计题目、设计要求以及系统功能需求分析;

2) 总体设计:包括系统总体设计框架和系统功能模块图;

3) 详细设计:包括主要功能模块的算法设计思路以及对应的工作流程图;

4) 调试分析过程描述:包括测试数据、测试输出结果,以及对程序调试过程中存

在问题的思考(列出主要问题的出错现象、出错原因、解决方法及效果等,适当

的包含结果截图);

5) 总结:课程设计完成了哪些功能,有没有什么扩展功能?还有哪些地方需要改

进?课程设计过程中的学习体会与收获、对本次课程设计的认识以及自己的建议

等内容;

6) 附录:主要源程序代码,含必要的注释。

3、答辩:在实验室建立程序运行的环境,并在指导教师的监督下,独立解

决问题、运行程序和回答教师提出的问题。

目录

1 设计目的与要求………………………………………………………………P4

2 总体设计………………………………………………………………………P4

3 详细设计………………………………………………………………………P5 3.1功能模块设计………………………………………………………………P5

3.1.1 XX功能模块(可选) …………………………………………………P5

3.1.2 YY功能模块(可选) …………………………………………………P6

3.1.3 ZZ功能模块(可选)…………………………………………………P7 3.2数据结构设计……………………………………………………………P8 4调试分析……………………………………………………………………P9

4.1结构体……………………………………………………………………P9 4.2链表………………………………………………………………………P11 5遇到的问题及解决方法分析…………………………………………………P12 6 总结……………………………………………………………………………P13 7源文件…………………………………………………………………………P13 7.1链表………………………………………………………………………P13 7.2结构体……………………………………………………………………P28

1、目的与要求

一目的:编制一程序实现对学生成绩的管理,让自己既动手又动脑,独立实践,将课本上的理论知识和实际应用问题进行有机结合,锻炼自己分析、解决实际问题的能力,提高自身项目开发及程序调试能力。

二要求:

1、整个系统均用C语言实现;

2、利用指针、结构体、链表来实现学生成绩的数据结构设计;

3、系统具有输入、显示、查询(查询时可实现按姓名查询、按学号查询)、删除、排序、插入,保存、读取基本功能;

4、系统的各个功能模块都用函数的形式来实现;

5、学生信息数据要以文件的形式保存,能实现学生信息数据的维护。此模块包括子模块有:增加学生信息、删除学生信息、修改学生信息;

6、可以输入任意的一个课程名(如数学)和一个分数段(如60--70),统计出在此分数段的学生情况;

7、能对用户指定的任意课程名,按成绩升序或降序排列学生数据并显示排序结果;

8、可自动增加新功能模块;

9、可以将学生信息从文件中读取出来。

2 总体设计

1、主函数 main()

利用if-else,While循环语句和switch()实现各函数的调用,系统根据输入的数字选项来调用相应的函数。

2、菜单选择函数void menu();

这是一个无参函数,主要实现“功能选择”的界面,在这个界面里有显示系统的13大功能,根据每个功能前面的序号进行选择。等执行完每一个函数功能后,按任‘0’键回到主界面也要通过这个函数提示来实现!

3、自定义函数 void printstart()、void Wrong()、void Nofind()、void printc()、void

printe(Node *p)

用void Wrong()来提示输入错误,用void Nofind()提示没有找到学生资料,用void printc()来输出中文,用void printe(Node *p)来输出中文。

main()

void Add(Link l) void Maths(Link l)

void Qur(Link l) void English(Link l) void Del(Link l) void select(Link l) void Modify(Link l) void Save(Link l)

void Disp(Link l) void menu()

void Tongji(Link l) void printc()

void Chinese(Link l) void printe(Node *p)

3 详细设计

3.1功能模块设计

3.1.1 排序数学成绩功能模块

相关文档
最新文档