学生综合测评系统C语言设计_第1页
学生综合测评系统C语言设计_第2页
学生综合测评系统C语言设计_第3页
学生综合测评系统C语言设计_第4页
学生综合测评系统C语言设计_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、郑州科技学院C语言课程设计设计(论文)题目:学生成绩管理系统所在院:信息工程学院专业班级:15计算机科学与技术3班学生姓名:宋建军学号:5指导教师:周丽2016年9月11日郑州科技学院课程设计(论文)任务书设计题目:学生综合信息测评系统专业班级:15计算机科学与技术3班学号85姓名宋建军主要内容设讣学生成绩管理系统,主要包含:输入记录模块、査询记录模块、更新记录模块、统 计记录模块和输出记录模块。采用字符用户界而,通过菜单选择相应的操作,宜观且操作简单。数据的存储选用数据 文件方式;编辑平台选用Microsoft Visual C+。所用到的知识点有:三种基本程序结构,数组,函数,指针,结构体

2、,文件操作和链表。基本要求:按照内容要求,设讣完整的学生成绩管理系统要求调试通过,不存在漏洞,方便用户 操作。功能的实现上力求容错能力要强且提示信息完备。完成期限:2016年9月11日指导教师签名:1概述1程序要求 1具体分工情况1开发环12需求分析23总体设计2程序主界面设计学 生 信 息 处 理 子 界 面 设it学生数据处理子界面设计4程序设计25程序调试26程序评估37参考文献31概述1)程序要求每个学生的信息为:学号、姓名、性别、家庭住址、联系电话、语文、数学、 外语三门单科成绩、考试平均成绩、考试名次、同学互评分、品德成绩、任课教 师评分、综合测评总分、综合测评名次。考试平均成绩、

3、同学互评分、品徳成绩. 任课教师评分分别占综合测评总分的60%, 10%, 10%, 20%oA.学生信息处理(1) 输入学生信息、学号、姓名、性别、家庭住址、联系电话,按学号 以小到大的顺序存入文件中。(2) 插入(修改)同学信息:(3) 删除同学信息:(4) 浏览学生信息:B学生数据处理:(1) 按考试科目录入学生成绩并且按公式:考试成绩=(语文+数学+外语)/3计算考试成绩,并计算考试名次, 提示:先把学生信息读入数组,然后按提示输入每科成绩,计算考试成绩, 求出名次,最后把学生记录写入一个文件中。(2) 学生测评数据输入并计算综合测评总分及名次。综合测评总分=(考试成绩)*+ (同学互

4、评分)林品徳成绩*+任课老 师评分*。(3) 学生数据管理输入学号,读出并显示该同学信息,输入新数据,将改后信息写入文件(4) 学生数据查询:输入学号或其他信息,即读出所有数据信息,并显示出来。C、学生综合信息输出3 )开发环境Microsoft Visual C+2需求分析为什么要做个学生综合测评系统。以下有儿点理由1,我们都知道学校考核一个学生的主要依据就是学生的综合成绩,综合素 质。这就让一个学生的综合测评系统的建立显得尤为重要。2一个学生综合测评系统包括学生的方方面面信息,这有利于学校的管理。3大家都知道学生是流动的,而且综合测评是每年评比一次,所以这学生 综合测评系统的更改录入功能重

5、要性不明而喻。4现在是个时间就是金钱的社会。老师本身就工作繁忙。这系统可以大大 减轻老师的包袱。5这是个开放的平台,每个学生都可以轻易地查询自己的成绩。灵活性强。3总体设计1)程序主界面设计主界2 )学生信息处理子界面设计学生信息处返回浏览学生删除学生修改学生输入学生3)学生数据处理子界而设计学生数据处录入成绩修改学生学生数据査4 )主菜单程序流程图主菜单退出4程序设计1)主界面程序设计(1)函数描述输入参数:无输出参数:无功 能:本系统可以存储学生的基本信息和各科成绩,并能计算 考试成绩,综合测评成绩和排名。(2)函数程序int main()system(color 2e);printfCn

6、nntt欢迎使用学生综合管理系统nrT);printf (*nntt*);system(*pause*);menuO ;入学生信息n);printf2.修改学生信息n);printf3.删除学生信息n);printf4.浏览学生信息n);printf (*ttt 0.返回主菜单nn);printf Ctt请输入序号选择操作:);scanf(”%d, &choice);if(choice=0) break;switch(choice)case1:systm(cls); info_input();info_xieru(); break;case 2: system(cis);info_xiugai

7、(); break;case 3: system(cls);info_del(); break;case 4: system(cls);info_output(); break;default: system (cis) ; printf (*nt 输入有误! 请重新输入!nn); break;3)学生数据处理子菜单(1)函数描述函 数名:data_menu()输入参数:无输出参数:无功能:显示学生数据处理系统菜单(2)函数程序Voiddata_menu()入成绩数据rT);printf (*ttt 2.修改学生数据n);printf (*ttt 3.学生数据査询iT);printf (*tt

8、t 0.返回主菜单nn);printf (tt请输入序号选择操作:”);scanf(%d, Achoice);if(choice=0) break;switch(choice) case 1: system(cls) ;data_input(); break;case 2: system(cls);data_xiugai(); break;case 3: system(cls);data_chaxun(); break;default: system (cis); printf (nt 输入有误! 请重新输入!nn); break;4) 学生综合信息输出(1)函数描述函数名:shuchu ()

9、输入参数:无输出参数:无功 能:学生信息的综合输出(2)函数程序void shuchu ()umber, infoi name, infoiinfocount number)for(j=count;ji;j)infoj=infoj-l;infoi=p;break;count+;8) 输出函数/ c水水* * * c水水水水* * *水水水水水* * *水水水水水* * *水水水水水* * *水水水水水* * *水水水水函数名:info_output ()输入参数:无输出参数:无功能:显示学生个人信息*水水*水*水*水水umber);void info_output()printf C %8s:

10、 infoi. name);printf C %8s/z, infoi sex);printf (%10s/z, infoi addr);printf C %10snnz,, infoi phone);printf ft请按任意键返回上级:);printf(nntt);system(z,pause/z);printf (nnnn);9) 学生信息写入文件函数名:info_xieru()输入参数:无输出参数:无功能 :把学生个人信息数据写入到文件voidinfo_xieru ()umber= continue;else fprintf (f, z/%d %s %s %s %s 、infoi nu

11、mber, infoi name, infoi sex, infoi addr , infoLi_ phon e);fclose(f);printf (z,nt 保存成功!nn);printf(nntt);system(,zpausez/);system(cls); return;10) 删除学生信息函数0/函数名:info_del ()输入参数:无输出参数:无功能:删除学生个人信息wJw *wwJw *wwJw *wwJw *wwJw *wwJw *二count) printfCnt 没有找到该学生!rT) ; return;printff学号 姓名 性别 地址联系电话n);umber);p

12、rintf(%5s z,, infoi. name);printf (%5s ,z, infoi. sex):printf(%10s ,z, infoi. addr);printf(”10snn, infoi. phone);printf(nt 是否删除t 1.是 t 2.否 t );whilescanf(”%d, &j);switch(j)case 1: infoi=w; printf(nt 删除成功!nn); info_xieru(); return;case 2: return;default : printf C输入错误!请重新输入!z,);break;break;printf(nnt

13、t);system(pause);)11) 学生信息修改函数tt q jq j7 jq j7 jq j7 jq j7 jq j7 jq jf 卜卜卜卜/卜d卜N卜卜NR 卜卜卜/卜d卜N卜卜卜卜卜/卜d卜N卜卜卜卜卜/卜d卜N卜卜卜卜卜/卜d卜N卜卜卜卜卜/卜d卜N卜卜J卜函数名:info_xiugai ()输入参数:无输出参数:无功能:修改学生信息void info_xiugai() umber=pp) break;辻(i二count)printf Cnt 没有找到该学生!n) ; return;printf f学号 姓名性别 家庭地址联系电话n);umber);printfCprintfC

14、%10s/z, infoi name);%10s/z, infoi sex);printf(printfC%16s, infoi. addr);%13sn/z, infoi phone);printf (z/nt 是否修改t 1是 t 2否 t “);while(1) dnzz, infoi number);printfCt请输入姓名:);scanf (s: infoi name);printfCt请输入性别:);scanf(%s, infoi. sex);if ( strcmp,男)!二0 ) I I (strcmp,女“)!二0)printf (t你输入的内容不符合要求,请从新输入!按任意

15、键继续);getch();continue;printf Ct请输入家庭地址);scanf(%s, &infoi. addr);printf Ct请输入电话号码:);scanf (z,%szz, infoi phone);printf Cnt 修 改成功!nn); info_xieru(); return;nn);辻(f_ddta二fopen(, r)二二NULL)printf (W 打开文件失败!nn);return; i=0;while(!feof(f_data)f scanf (f_data,,z%d %d %d %d %f %d %d %d %d %f 、&, &, &, &, &,

16、&, &datai=d;i+;printf (,znt导入已完成!共导入d条记录! nnn, count);fclose(f_data);umber, datai Chinese, datai math, datai english, datai avg, data i ksmc, datai huping , dataLiZ. pinde, dataFi. teacher, dataFi. ceping );fclose(f);printf(nntt);system(,zpause/z); system(cls);return;14)数据输入函数 Jw函数名:data_input ()输入参

17、数:无输出参数:无功能:录入学生数据回;其余void data_input()数字继续八n);scanf(%d, &choice);if (choice=0) return;printf (/znnt 正在导入 nn);umber =;infocount=p;count+;printf (z,nt导入已完成!共导入%d条记录! nnn, count);fclose(f_info);for(i二0;icount;i+)umber);printf(n);printf (t 姓名:%sn, infoi. name);printf(n);printf Ct请输入语文成绩:);scanf,&datai.

18、 Chinese);while( datai. Chinese 100 ) printf (t对不起你输入的数据不是1-100之间,请从新输入 真确的数值! n);printf Ct请输入语文成绩:”);scanf(%d,&datai. Chinese);printf(n);printf (t请输入数学成绩:);scanf (,z%d,z,&dat ai. ma th);whi.le( datai. math 100 )printf(t对不起你输入的数据不是1-100之间,请从新输入真确的数值! );printf (t请输入数学成绩:);scanf(%d,&datai. math);print

19、f(n);printf (t请输入英语成绩:);scanf C%dz,&datai. english);while( datai. english 100 ) printf(t对不起你输入的数据不是1-100之间,请从新输入 真确的数值! );printf(t请输入英语成绩:);scanf(%d,&ddtai. english);printf(n);printffXt请输入同学互评成绩:“);scanf(%d,&datai. huping );while( datai. huping 100 ) printf(t对不起你输入的数据不是1-100之间,请从新输入 真确的数值! );printf(

20、t请输入同学互评成绩:“);scanf(%d,&datai. huping );printf(n);printfCt请输入品德成绩:);scanf(%d,&datai. pinde);while( datai. pinde 100 ) printf(t对不起你输入的数据不是1-100之间,请从新输入 真确的数值! );printfCt请输入品德成绩:);scanf (”%d: &ddtai. pinde);printf(n);printf(*t请输入老师评分:“);scanf(%d,&datai. teacher);while( datai. teacher 100 ) printf(t对不起

21、你输入的数据不是1-100之间,请从新输入 真确的数值! );printffXt请输入老师评分:);scanf (z/%d,z, &datai teacher);datai. avg=(datai chinese+dataLi math+datai english)/;datai. ceping=(datari. avg*+datai huping*+datai pinde*+datai teacher*;datai ksmc=i+l;for(k=0;kdatak avg)datak ksmc=datak ksmc+1; if(datali ksmcdatak ksmc-1) datai ks

22、mc=datak ksmc-1;printf (,znt输入已完成!正在保存.n); data_xieru();system(cls);15)数据修改/r Ar Ar Ar Ar Ar A函数名:data_xiugai ()输入参数:无输出参数:无功能:学生成绩数据的修改str 7 j7 j7 j7 j7 j qj qj 7 j7 j qj qj 7 j入1 7 j qj qj 7 j入1 7 j qj qj 7 jI卜卜/卜/卜和2卜a 3卜0卜卜/卜/卜和2卜a 3卜0卜卜/卜/卜和2卜a 3卜0卜卜/卜/卜和2卜a 3卜0卜卜/卜/卜和2卜a 3卜0卜卜/卜/卜和2卜a 3卜0卜卜/卜J

23、卜fvoid data_xiugai()umber二二pp) break;if (i=count) printfCnt 没有找到该学生! n) ; return;printf (z,nt 学号:%. Od 姓名:s nnt 语文:d 数学:d 英语:d 品德成绩:%d老师评分:%dnn, datai. number, infoi. name, datai. Chinese, datai. math, ddtai. english, ddtai. pinde, datai. teacher);printf (,znt 是否修改t 1.是 t 2.否 t ”);whilevgdatak. avg)

24、 ddtak. ksmc=datak. ksmcT ;printf Cnt请输入语文成绩:);scanf (,%d,/,&datai. Chinese);while( datai. Chinese 100 ) printf (z,t对不起你输入的数据不是1-100之间,请 从新输入真确的数值! n);printf (t请输入老师评分:); scanf(%d,&datai. Chinese );printf (t请输入数学成绩:);scanf(%d,&datai. math);whi.le( datai. math 100 ) printfCt对不起你输入的数据不是1-100之间,请 从新输入真

25、确的数值! n);printf Ct请输入数学成绩:”);scanf(%d, &ddtai. math);printf(t请输入英语成绩:); scanf(弘d,&datai. english);while( datai. english 100 ) printfCt对不起你输入的数据不是1-100之间, 请从新输入真确的数值! );printfCAt请输入英语成绩:“);scanf(%d, &datai. english); printfCW 请输入同学互评成绩:”); scanf,&datai. huping );while( datai. huping 100 ) printf(t对不起

26、你输入的数据不是1-100之间,请 从新输入真确的数值! );printfCt请输入同学互评成绩:); scanf(%d,&datai. huping );printf Cnt请输入品德成绩:“);scanf(%d,&datai. pinde);while( datai, pinde 100 ) printf (t对不起你输入的数据不是1-100之间,请 从新输入真确的数值! );printf Ct请输入品德成绩:);scanf(%d,&datai. pinde);printf (t请输入老师评分:);scanf(%d,&datai. teacher);while( datai.teacher

27、 printf (t对不起你输入的数据不是1-100之间,请 从新输入真确的数值! );printfCt请输入老师评分:);scanf (,z%d,&datai teacher);datai avg=(dataLi chinese+dataLi math+datai english)/;datai ceping=(datai avg*+datai huping *+ datai pinde*+datai teacher*;datai ksmc二count;for(k=0;kdatak avg)datak ksmc=dak ksmc+1;if(datai ksmcdatak ksmc-1)dat

28、ai ksmc=datak ksmc-1:printf (/znt修改成功!nn,?) ; data_xieru() ; return; 号查询方式nn);printf (t2.姓名查询方式nn);printf Ct 请选择:);scanf&xz);if(xz=l)printf (nt请输入要查询学生的学号:“);scanf (弘d, &pp);printf(n);for (i=0;i二count) printffW 没有找到该学生! n);return;printf(nt 学号:d 姓名:s 性别:s nnt 语文:d 数学:d 英语:d平均成绩:%. If名次:%dnnt同学互评:%d品德

29、成绩:d老师评 分:%dnnt综合成绩:%. lfnn, infoti. number, infoi. name, info_i_. sex, datai. Chinese ,ddtai. math, ddtai. english, ddtai. avg, datai. ksmc, datai. hupin g ,datai. pinde, datai. teacher, datai. ceping);printfCXnWXr);system(pause);return;elseprintf(nt请输入要查询学生的姓名:);scanf (弘s, &cname);printf(n);for(i=0;i=count)printfCnt没有找到该学生! n); system(pause);return;system(pause);17)使用到的结构体(1)学生信息结构体 struct student狗拼音半:主菜单 字生信息处理系统 2 洋生数凋处理系统 3 率生综苔信息输岀 9 帮助信息 0退岀系统请输入序号选择操作:貢 E:20115st udentD ebugst udent. exe |nx学主信息处理系统自心UD心自心40心信信信信单 注岀注注 1? 入改陈览回 12 3 4 0请输入序号选择操作:5 E:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论