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