欢迎来到天天文库
浏览记录
ID:51855370
大小:163.78 KB
页数:25页
时间:2020-03-17
《学生成绩管理系统.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1问题描述学生成绩管理系统学生成绩管理系统学生信息包括学期、学号、班级、姓名,和语文、数学、英语、计算机四门课成绩。并按班级、学期查询学生成绩,并能录入、修改,求学生平均成绩和总成绩,输出不及格科目,按班级输出成绩单,按班级对学生成绩进行排序。2系统分析2.1题目要求学生成绩管理系统设计学生成绩信息包括:学期,学号,班别,姓名,四门课程成绩(语文、数学、英语和计算机)。主要功能:(1)能按学期、按班级完成对学生成绩的录入、修改(2)能按班级统计学生的成绩,求学生的总分及平均分,设计并输出统计报表(3)能查询学生成绩,不及格科目及
2、学生名单(4)能按班级输出学生的成绩单(5)能按班级,按课程,对学生成绩进行排序。要求:使用二进制文件方式存储数据,系统以菜单方式工作2.2算法设计(1)创建主菜单(2)实现学生成绩信息录入(3)实现学生成绩信息修改(4)实现学生成绩信息查询(a)按学期、班级查询学生的成绩(b)按学号查询学生的成绩(c)查询不及格的科目和学生名单(5)实现学生成绩成绩统计(a)按班级统计学生的总分、平均分(b)按班级、课程对学生的总分进行排序(6)实现学生成绩信息浏览2.3流程图2.4关键问题难点:指针p、函数。解决:head=NULL无条件循
3、环指针p指向新开辟的单元指针p是否为空是否输入学号p->num输出p->num是否为@内存是否溢出输入姓名p->name停止for(i=0;i<3;i++)输入输入成绩返回p->sum=s;菜单p->average=(float)s/3;主函数:intmain()新建函数:infor*init()输入函数:infor*creat()显示函数:structinfor*view(structinfor*head)删除函数:infor*delete(infor*head)按名字寻找函数:voidlookup(infor*head)保存
4、函数:voidsave(infor*head)按总分排序函数:infor*sort(infor*head)计算总分和均分函数:voidzong(structinfor*head)修改函:voidchange(structinfor*head)按学号排序函数:infor*index(infor*h)3系统实现3.1题目一(源代码)#include#include#include#defineN4structinfor{intterm;//定义学期(1或2)intno;//学
5、号intclas;//定义班级(1或2班)charname[9];//姓名floatchinese;//定义四门成绩floatenglish;floatmath;floatcomputer;structinfor*link;};intn=0;//******************************************************************************//函数功能:创建链表,录入学生的相关信息,此函数返回一个指向链表头的指针//***************************
6、***************************************************structinfor*creat(){structinfor*head=NULL,*p=NULL,*q=NULL;charc;fflush(stdin);printf("是否要输入信息(y/n):");scanf("%c",&c);p=q=(structinfor*)malloc(sizeof(structinfor));q=head;while(p!=NULL&&c=='y'){n++;p=(structinfor*)mal
7、loc(sizeof(structinfor));printf("请输入要录入学生信息的学期:");fflush(stdin);scanf("%d",&p->term);//学期只能为1或2while(p->term!=1&&p->term!=2){getchar();printf("输入错误!请重新输入:");//若学期不为1或2,则输入有误scanf("%d",&p->term);}printf("请输入要录入学生成绩信息的班级:");fflush(stdin);//班级只能为1或2scanf("%d",&p->clas);
8、while(p->clas!=1&&p->clas!=2){getchar();printf("输入错误!请重新输入:");scanf("%d",&p->clas);}printf("请输入该班的学生信息!");//输入学生信息(包括学号、四门成绩)prin
此文档下载收益归作者所有