下载此文档

C语言学生成绩管理系统设计报告.pdf


文档分类:IT计算机 | 页数:约21页 举报非法文档有奖
1/21
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/21 下载此文档
文档列表 文档介绍
该【C语言学生成绩管理系统设计报告 】是由【青山代下】上传分享,文档一共【21】页,该文档可以免费在线阅读,需要了解更多关于【C语言学生成绩管理系统设计报告 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。:..语言课程设计(科创实验)报告学生成绩管理系统专业年级学生姓名学号指导教师2021年1月4日:..录11......................................................................................................................................2需求分析.................................................................................................................................................................................................................................................................23系统设计概要...............................................................................................................................................................................................................................................................................................................................34系统详细设计.................................................................................35系统测试.........................................................................................46总结与反思.....................................................................................8参考文献............................................................................................8附录....................................................................................................9:..设计任务设计一个系统,使其能够记录学生的学号、姓名、专业和5门课程的成绩。该系统能够实现添加、删除、修改功能。并且能够计算某学生的总分和平均成绩,能够按照总分排序输出。,方便管理的网上的信息查阅平台,学生可以通过该系统查阅与自己相关信息。教师可以通过成绩管理系统查阅学生成绩信息。系统管理员可以实现以上的所有功能,还有对学生的添加、删除、修改、教师的添加、删除、修改。根据开发要求,学生成绩管理系统主要应用于教育系统,完成对日常的教学、教务、教师以及学生的计算机化的管理。开发学生成绩管理系统可使学院教职员工减轻工作压力,比较系统地对教务、教学上的各项服务和信息进行管理,同时,可以减少劳动力的使用,加快查询速度、加强管理,以及国家各部门关于信息化的步伐,使各项管理更加规范化。目前,学校工作繁杂、资料重多。目前,管理信息系统已进入高校,但还未普及,而对于学生成绩管理来说,目前还没有一套完整的、统一的系统。因此,开发一套适和大众的、兼容性好的系统是很有必要的。、姓名、专业和5门课程的成绩。该系统能够实现添加、删除、修改功能。并且能够计算某学生的总分和平均成绩,能够按照总分排序输出。1:..、按照单科成绩排序、添加学生信息后可以写进文件。。++。:{intnum;/*定义学号*/charname[20];/*定义姓名*/charmajor[20];//专业floatscore[5];/*定义存贮五门课成绩的数组*/2:..floatavg;//平均分};为了存储学生信息定义结构体数组全局变量structstudentstu[N];/*定义结构体数组,存贮多个学生的记录*/intnum=0;//();//添加学生成绩,记录学生的学号,学生的姓名,学生的成绩voidvoidqueryUnpass();//查询并输出所有有不及格成绩记录的学生的成绩信息voidsortBytotal();//按照学生的总成绩,对学生的成绩记录进行排序voidsortByScore();//按照学生的单科成绩,对学生的成绩记录进行排序voidquery();//查询学生信息,可根据学号和姓名查询3:..voidchange();//修改学生信息voidwriteIn();//:..5:..6:..7:..,在我们以后的学****和工作中都有着十分重要的地位。要学好这种语言,仅仅学****课本上的知识是不够的,还要经常自己动手,有较强的实践能力。只有多动手,经常编写程序,才能发现我们学****上的漏洞和不足,并在实践中解决这些问题,不断提高自己转化知识的能力。在此次课程设计中,我首先对系统的整体功能进行了构思,然后结构化分析,将整个系统清楚地划分几个模块,再根据每个模块的功能编写代码。而且尽可能的将模块细分,最后再进行函数调用。在函数编写中,我不仅用到了for循环、while循环和switch语句,还用到了函数之间的调用。终于功夫不有心人,在不断的调试和完善后,程序成功的运行了。参考文献[1][M].(第四版).北京:清华大学出版社,:..源代码#include<>#include<>#defineN30structstudent{intnum;/*定义学号*/charname[20];/*定义姓名*/charmajor[20];//专业floatscore[5];/*定义存贮五门课成绩的数组*/floattotal;//总成绩floatavg;//平均分};structstudentstu[N];/*定义结构体数组,存贮多个学生的记录*/intnum=0;//记录学生个数voidinit()//定义函数save,向文件输出N个学生数据{FILE*fp;//,并使fp指向此文件{打开文件失败!如果打开时出现错误,就输出打开文件失败}inti=0,j;while(!feof(fp))//当fp没有指向文件结束位置时,重复执行后面循环{在文件中读取学生数据for(j=0;j<5;j++)9:..stu[i].avg=stu[i].total/5;//i++;}num=i-1;fclose(fp);//关闭文件}voidwriteIn()//将学生信息保存到磁盘{FILE*fp;{打开文件失败!}inti,j;for(i=0;i<num;i++){for(j=0;j<5;j++)}fclose(fp);存储信息到文件成功!}voidprint(inti){intk;学生%s的学号是%d,专业是%s,总成绩是%.1f单科成绩是:,stu[i].name,stu[i].num,stu[i].major,stu[i].total);for(k=0;k<5;k++)10:..}voidadd()//添加学生成绩,记录学生的学号,学生的姓名,学生的成绩{inti;输入学号:输入姓名:输入专业:输入五科成绩:stu[num].total=0;for(i=0;i<5;i++){输入第%d科成绩stu[num].total+=stu[num].score[i];//计算总成绩}stu[num].avg=stu[num].total/5;for(i=0;i<num;i++){if(stu[i].num==stu[num].num){该学号信息已存在!return;}}num++;添加成功!}voiddelet()//删除学生信息{studenttmp;11:..inti,j;for(i=0;i<num;i++){if(==stu[i].num){break;}}if(i==num){该学生信息不存在!}else{for(j=i;j<num-1;j++)stu[j]=stu[j+1];删除成功!}}voidchange()//修改学生信息{inti,j;studenttmp;请输入学号:for(i=0;i<num;i++){if(==stu[i].num){找到学生信息如下print(i);break;12:..}}if(i==num){return;}修改学生信息输入学号:输入姓名:输入专业:输入五科成绩:=0;for(j=0;j<5;j++){输入第%d科成绩:+=[j];//计算总成绩}=;stu[i]=tmp;修改成功!}voidquery()//输入学生学号,输出这位学生的成绩信息{studenttmp;inti;intch;学号查询姓名查询13:..if(ch==1){请输入学号:for(i=0;i<num;i++){if(==stu[i].num){找到学生信息如下{print(i);break;}}}if(i==num){该学生信息不存在!}}elseif(ch==2){请输入姓名:for(i=0;i<num;i++){if(strcmp(,stu[i].name)==0){找到学生信息如下{print(i);break;14:..}}}if(i==num){}}else输入错误!}voidqueryUnpass()//查询并输出所有有不及格成绩记录的学生的成绩信息{inti;inttmp[N];intcount=0;//count为要读写多少个数据项for(i=0;i<num;i++){if(stu[i].score[0]<60||stu[i].score[1]<60||stu[i].score[2]<60||stu[i].score[3]<60||stu[i].score[4]<60)//判断每门课的成绩是否合格{tmp[count]=i;count++;}}if(count!=0){挂科学生信息如下:for(i=0;i<count;i++)print(tmp[i]);}else没有学生挂科!}15:..voidsortByTotal()//{inti,j;studenttmp;for(i=0;i<num;i++){for(j=0;j<num;j++){if(stu[i].total>stu[j].total)//比较大小{tmp=stu[i];stu[i]=stu[j];stu[j]=tmp;}}}姓名总成绩for(i=0;i<num;i++){}}voidsortByScore()//按照学生的单科成绩,对学生的成绩记录进行排序{intch;要按照第几科成绩排序?(选择1/2/3/4/5)ch-=1;inti,j;studenttmp;for(i=0;i<num;i++){for(j=0;j<num;j++)16:..{if(stu[i].score[ch]>stu[j].score[ch]){tmp=stu[i];stu[i]=stu[j];stu[j]=tmp;}}}成绩for(i=0;i<num;i++){}}voidmenu()//输出主菜单界面{成绩管理系统添加学生成绩查询学生信息查询不及格学生记录按照总成绩排序按照单科成绩排序删除学生成绩修改学生成绩将数据写入文件退出系统请输入选择}intmain(){intch;17:..init();while(1){menu();if(ch==0){break;}switch(ch)//ch的值,根据ch不同值执行对应语句{case1:add();break;case2:query();break;case3:queryUnpass();break;case4:sortByTotal();break;case5:sortByScore();break;case6:delet();break;case7:change();break;case8:writeIn();break;18:..}实现清屏}return0;}19

C语言学生成绩管理系统设计报告 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数21
  • 收藏数0 收藏
  • 顶次数0
  • 上传人青山代下
  • 文件大小1.60 MB
  • 时间2024-04-14