学生成绩管理系统程序设计c语言(共19页).doc
《学生成绩管理系统程序设计c语言(共19页).doc》由会员分享,可在线阅读,更多相关《学生成绩管理系统程序设计c语言(共19页).doc(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上课程设计报告书学生成绩管理系统班 级学 号:姓 名:指导老师:目录1、 题目要求-12、 设计思想-33、 系统完成功能及框图-34、 界面设计-45、 核心算法及说明-76、 结论-167、 参考资料-168、 后记-16摘要:学生成绩管理系统提供了强大的学生成绩管理管理功能,方便系统管理员对学生成绩等信息的添加,修改,删除,查询,留言等操作,同时一样的方面学生对自己各科成绩查询,学习的交流.随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用.作为计算机应用的一部分,使用计算机对学生成绩信息进
2、行管理,有着手工管理所无法比拟的优点.1、题目要求题目七:学生成绩管理系统设计学生成绩信息包括:学期,学号,班别,姓名,四门课程成绩(语文、数学、英语和计算机)等。主要功能:(1) 能按学期、按班级完成对学生成绩的录入、修改(2) 能按班级统计学生的成绩,求学生的总分及平均分(3) 能查询学生成绩,不及格科目及学生名单(4) 能按班级输出学生的成绩单要求:使用二进制文件方式存储数据,系统以菜单方式工作2、设计思想我们设计的学生成绩管理系统共有7个功能,所涉及到的函数有按回车返回主菜单、查询、保存、输入、修改、输出、统计等等。这是一个关于学生成绩的管理系统,所以就会涉及到一系列问题,例如:去各科
3、成绩的总和、平均值、不几个学生的科目及对应的成绩。这个程序的整个思路就是按照要求写出相应的程序并使之能够运行。首先,写出所有能够用到的库函数,并设计出能够显示主菜单的程序。其次按照主菜单设计出所有的有关程序。再次,由于这个程序会用到结构体所以会涉及到“将数据从结构体数组保存到文件中” 、“将数据从文件读到结构体数组中”这两个程序。为了使程序更完美还涉及了主函数的显示。最后,就可以按照主菜单进行一系列的操作。其实,这些程序的设计都是根据以前学过的只是进行的简单的程序的叠加。没有什么可以害怕或是担心的。3、系统完成功能及框图退出程序查看所有同学信息输入学生记录修改学生记录按班级查询成绩查询不及格同
4、学成绩统计4、界面设计主菜单运行1后界面运行4后界面运行5后界面5、核心算法及说明#include #include #include #include #define MAX 300struct student char cla10; /班级 char term10; /学期 char name10; / 姓名 char no10; / 学号 float ch; /语文 float ma; /数学 float en; /英语 float com; /计算机;struct data int count; / 当前学生数组中学生的个数 struct student stuMAX; / 学生数组
5、dd; / 显示主菜单void menu() system(cls); printf(n); printf(ttt*n); printf(ttt* *n); printf(ttt* 学生成绩管理系统 *n); printf(ttt* *n); printf(ttt* 0 退出 *n); printf(ttt* 1 查看所有学生信息 *n); printf(ttt* 2 输入学生记录 *n); printf(ttt* 3 修改学生记录 *n); printf(ttt* 4 查询(班级) *n); printf(ttt* 5 查询(不及格记录) *n); printf(ttt* 6 成绩统计 *n
6、); printf(ttt* *n); printf(ttt*n); / 等待用户按回车后回到主菜单void to_menu() char c1,c2; printf(nnn按回车键返回主菜单.); scanf(%c%c,&c1,&c2); menu(); / 查看所有学生信息void view_data() int i; printf(班级t学期t姓名t学号t语文t数学t英语t计算机); printf(n-n); for(i=0;idd.count;i+) printf(%st%st%st%st%.1ft%.1ft%.1ft%.1fn,dd.stui.cla,dd.stui.term,dd.
7、stui.name,dd.stui.no,dd.stui.ch,dd.stui.ma,dd.stui.en,); / 将数据从结构体数组保存到文件中void save_data() FILE *fp; int i,k; k=dd.count; fp=fopen(c:/dada.txt,w); fwrite(&k,sizeof(int),1,fp); for(i=0;ik;i+) fwrite(&dd.stui,sizeof(struct student),1,fp); fclose(fp); / 输入学生记录(按班级和学期)void add_data() struct student st;
8、int b; int i,k,j; char term10,cla10; printf(请输入所要录入的学生的班级:); scanf(%s,cla); printf(请输入所要录入的学期:); scanf(%s,term); while(1) j=0; printf(n请输入学生信息:); printf(n姓名t学号t语文t数学t英语t计算机); printf(n-n); scanf(%s%s%f%f%f%f,st.name,st.no,&st.ch,&st.ma,&st.en,&); for(i=0;idd.count;i+) if(strcmp(dd.stui.no,st.no)=0&st
9、rcmp(dd.stui.term,term)=0) if(strcmp(dd.stui.no,st.no)=0) printf(n信息已存在,请重新输入!n); j=1; break; if(j=1) continue; if(j=0) k = dd.count; strcpy(dd.stuk.cla,cla);strcpy(dd.stuk.term,term); strcpy(dd.stuk.name,st.name); strcpy(dd.stuk.no,st.no); dd.stuk.ch=st.ch; dd.stuk.ma=st.ma; dd.stuk.en=st.en; =; dd
10、.count+; printf(nn继续添加学生信息1-yes 0-no:); scanf(%d,&b); if(b=0) break; save_data();/ 将数据从文件读到结构体数组中void read_data()FILE *fp;int i,k;struct student st;k=0;if(access(c:/dada.txt,0)=-1)/ 如果文件不存在fp=fopen(c:/dada.txt,w);fwrite(&k,sizeof(int),1,fp);fclose(fp);fp=fopen(c:/dada.txt,r);fread(&k,sizeof(int),1,f
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 成绩管理系统 程序设计 语言 19
限制150内