学生成绩管理系统课程设计Word格式.docx
《学生成绩管理系统课程设计Word格式.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统课程设计Word格式.docx(10页珍藏版)》请在冰点文库上搜索。
学号
题目
学生成绩管理系统
课题性质
工程
课题来源
自拟
指导教师
同组姓名
主要内容
运用所学的C语言知识编写一个学生成绩管理系统,把所学的知识有机的结合起来,提高各方面知识的连通性,并正确的运行。
任务要求
1.主要功能:
(1)
能按班级完成对学生成绩的录入、修改
(2)
能按班级统计学生的成绩,求学生的平均分,并能根据学生的平均成绩进行排序
(3)
能查询学生成绩,不及格科目及学生名单
(4)
能按班级输出学生的成绩单
参考文献
(1)《C程序设计(第三版)》,
谭浩强编著,清华大学出版社,2005
(2)《C程序设计题解与上机指导》,
(3)计算机基础与C语言程序设计》,耿国华,索琦等编著,电子工业出版社,2002
审查意见
指导教师签字:
教研室主任签字:
年月日
1需求分析
学生成绩管理:
(结构体数组、函数、指针、算法、流程结构及文件等的综合应用)
程序说明:
有N个学生,每个学生的数据包含学号(不重复)、姓名、三门课的成绩及平均成绩,试设计一学生成绩管理系统,使之能提供以下功能:
(1)主菜单
(2)各菜单项功能
①成绩录入:
能按班级完成对学生成绩的录入、修改
②成绩查询:
(至少一种查询方式)。
?
按姓名查询学生记录。
查询不及格科目学生的记录。
③成绩统计:
计算学生的平均分;
根据学生的平均分高低,对学生的数据进行排序后输出;
?
④退出系统:
退出整个系统(即主菜单)。
2概要设计
一、数据结构设计描述
1能够输入学生的学号、姓名、班级,三科成绩并且计算出平均成绩。
2能够按照学生三科的平均成绩进行排序
3能够按照学生的单科成绩进行排序
4能够按照姓名查询学生记录
5能够统计不及格科目学生的记录
6从表中删除学生记录
7存储记录到文件中
二模块划分
3详细设计
main()
{
intchoice;
IO_ReadInfo();
while
(1)
{
/*主菜单*/
printf("
\n------学生成绩管理系统------\n"
);
1.增加学生记录\n"
2.修改学生记录\n"
3.删除学生记录\n"
4.按姓名查询学生记录\n"
5.按平均成绩排序\n"
6.退出\n"
请选择(1-6):
"
scanf("
%d"
&
choice);
getchar();
switch(choice)
case1:
Student_Insert();
break;
case2:
Student_Modify();
case3:
Student_Delete();
case4:
Student_Select();
case5:
Student_SortByAverage();
Student_Display();
case6:
exit();
}
IO_WriteInfo();
}
在编制本程序过程中需要完成以下任务:
(1)设计Student_Insert()函数,用于输入学生的各项信息;
(2)设计Student_Display()函数,用于显示学生的各项信息;
(3)设计Student_Modify()函数,用于修改学生的一些信息;
(4)设计Student_Delete()函数,用于删除一些学生的信息;
(5)设计Student_Select()函数,用于查找学生的信息;
(6)设计Student_SortByAverage();
函数,用于能够按照学生三科的平均成绩进行排序
(7)设计IO_ReadInfo())函数,用于将学生信息从文件读出;
(8)设计IO_WriteInfo()函数,用于将学生信息写入文件
4调试分析
在调过程中遇到些错误,主要是书写的错误,粗心大意导致一些符号及标点的错误,例如把分号写成逗号,忘了加大括号等,还有个别子函数忘了定义,使程序无法正常运行,经仔细查找改正以及老师的指点后程序可以运行。
5测试结果
首先出现菜单界面:
按1进入输入界面,输入学生学号、姓名、各门分数,得到如下界面:
按2键输入修改信息,得到如下界面:
按3键进入如下界面:
删除学生信息!
按4键进入如下界面
按姓名查找信息:
按5键进入如下界面:
课程设计总结
经过二个多星期的C语言课程设计,感觉自己收获不少!
首先是:
这个课程设计里面主要都是用结构体数组,由于学得不好,要想能熟练掌握并运用结构体数组不容易的,所以在这方面我很了很多的时间看课本和参考课外书,使C语言的知识强化了不少。
其次,在做课程设计的过程中,发现了平时很多没有注意到的问题,例如:
返回值函数和不返回值函数两者在主函数中的调用是不同的…………
更重要的是,这次课程设计虽然花了我不少时间,但正是这些时间,让我见识到了C语言的重要性。
这个学生成绩管理系统都是在自己知识范围内完成的,所以界面清晰简单,可能不是很好看,但绝对实用!
从这里我也得到一个体会,做一个程序,或者开发一个软件,应该着重从它的后台制作入手,不能做出一个中看不中用的程序或者软件。
相信这次的课程设计为我以后继续从事计算机工作打了一个小小的开头。
经过努力,自己的辛苦终于有所收益。
通过本次程序设计,使我更深刻的体会到如何将所学的知识运用到实践中,学会了如何查阅资料、自学,逐步掌握程序设计和论文写作的一般步骤。
在设计过程中,明白设计一个好的程序必须经历资料查询、分析、设计、测试、维护漫长的周期,才能达到最佳效果。
总之,这次程序设计让我接触到了许多新知识,学到许多新东西,锻炼了我的独立学习能力,也锻炼了我解决问题的能力。
在本次程序设计过程中,得到了老师的指导和帮助,在此深表谢意。