c语言班级成绩管理系统.docx

上传人:scccc 文档编号:13254352 上传时间:2021-12-20 格式:DOCX 页数:24 大小:396.77KB
返回 下载 相关 举报
c语言班级成绩管理系统.docx_第1页
第1页 / 共24页
c语言班级成绩管理系统.docx_第2页
第2页 / 共24页
c语言班级成绩管理系统.docx_第3页
第3页 / 共24页
c语言班级成绩管理系统.docx_第4页
第4页 / 共24页
c语言班级成绩管理系统.docx_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《c语言班级成绩管理系统.docx》由会员分享,可在线阅读,更多相关《c语言班级成绩管理系统.docx(24页珍藏版)》请在三一文库上搜索。

1、海商N种学陇课程设计报告课程名称 C语言程序设计课题名称班级成绩管理系统专业 网络工程班级1001学号201003120129姓 名张佥U指导教师唐北平、陈淑红、谭小兰2011年6月20 日湖南工程学院课 程设计 任务书课程名称 C语言程序设计课 题 班级成绩管理系统专业班级网络工程学生姓名 张佥U学号 201003120129指导老师指北平、陈淑红、谭小兰审批任务书下达日期 2011 年6 月20日任务完成日期 2011 年7 月03日一、设计内容与设计要求1 .设计内容: 对一个有N个学生的班级,每个学生有 M门课程。 该系统实现对班级成绩的录入、显示、修改、排序、保存等操作的管理。1、本

2、系统采用一个结构体数组,每个数据的结构应当包括:学号、姓名、 M 门课程名称。2、本系统显示这样的菜单:请选择系统功能项:a、 成绩录入、显示b、 成绩修改c、 成绩查询d、 成绩排序、统计e、 退出系统3、执行一个具体的功能之后,程序将重新显示菜单。2 .设计要求:掌握结构化程序设计的主体思想,以自顶向下逐步求精的方法编制程序解决 一些实际的问题,为将来编写软件积累一些典型的案例处理经验。1 .设计正确,方案合理。2 .界面友好,使用方便。3 .程序精炼,结构清晰。4 .设计报告5000字以上,含程序设计说明,用户使用说明,源程序清 单及程序框图。5 .上机演示。6 .按学号顺序选课题号,并

3、在规定的时间内独自完成相关课题的C源程序编写、调整和运行。源程序及编译生成各文件均保存在软盘中;7 .按本任务书的要求,按附录的要求编写课程设计报告(Word文档格式)0并用A4的复印纸打印并装订;二、进度安排第 十八 周星期1 8时00分 11时30分星期2 14时30分18时00分 星期3 8时00分11时30分 星期4 8时00分11时30分第十九周星期1 8时00分11时30分 星期二14时30分18时00分目录一、功能简介5.1 主要功能介二、概要设计2.1 程序的模块2.2 程序流程三、详细设计3.1 系统总体结构3.2 学生信息录入3.3 成绩查询系统3.4 成绩删除模块3.5

4、排序统计系统3.6 退出系统四、课程设计总结6.1 课程设计心得6.2 在程序设计中的问题和解决附录源程序清单(带注释)计算机与通信学院课程设计评分表一、功能简介1.1主要功能介绍1、本系统采用一个结构体数组, 每个数据的结构包括:学号、姓名、M门课 程名称。2、本程序具有:(1)成绩录入(2)成绩显示(3)成绩删除(4)成绩排序、 统计(5)退出系统二、概要设计2.1程序的模块统模块图如下:2.2程序流程修改流程查询流程三、详细设计3.1系统总体结构 f "Deprogram filenMicrosoft Vi£ua”Uj|jK)Ct)mmQnM5D398BinDetru

5、gLexeT餐拜*菁此此*圣畀MX*舞片此M兴菁注畀*M舞景此/系*M*X犬此*X葺W W Xj" J w VK KKMMM*KKX 蜒找黑XXXXXXMKM*X««MXKM5KXXKXMXX«XMX3<M:«XXXX5KXXKXaKXK3KMMXXX«>tXXM;«XX 此XXXX黑找f_、欢迎使用班级成绩管理系统«««« >*XX留MMM0(门一门)。湖南工程学院0(3_门)0«XMMKKX晨兴XX乂4网络工程1GG1张剑张贵廉开字 乂XEX3<X

6、JCMX抹*2011.0B.25KMMMMMM福*MM瓣此林若黑先误*景*麓*MM超圣*MM起,*弼*我得超语*MM起K K K 5KXXMXMXX兴XKM*械MXX 款款款 XXXMMM*黑圣K 村 JT Km*兴*黑聂*XX美球吴舞*畀*舞犬犬共舞达晨MX黑黑黑黑为*兴*X兴基*MX*黑黑共黑请输入管理员账号:NanggonglGEl请输入8位密码:M2/203.2学生信息录入3.3成绩查询系统按任意提返回按学号排序:'D:program filesMicrosoft Visual StudJoCommonMSE)evgSXBirXDebugM.eKe -号学1021辉名水贵姓杨张

7、C语言数学英语平均成绩97.GG95.0091,0094.338T.G082.0086.0G85.003.4成绩删除模块3.5 排序统计系统3.6 退出系统六、课程设计总结6.1 课程设计心得:课程设计给我一个学以致用的机会,刚开始的时候还以为学这黑黑的东西没用, 只是一些简单的计算。经过了这次的练习我才发现原来的黑屏有它自己的好处,通过学 习也发现原来这种黑屏就是那些应用程序的原型,不论你以后学程序开发还是网页的制 作都有很好大好处,这些基础是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程 .随着 科学技术发展的日新

8、月异,当今计算机应用在生活中可以说得是无处不在。因此作为二 十一世纪的大学来说掌握计算机开发技术是十分重要的。回顾起此次课程设计,至今我 们仍感慨颇多,的确,自从拿到题目到完成整个编程,从理论到实践,可以学到很多很 多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学 到过的知识。通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论 知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才 能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。通过这次的学习我发现以后不管是哪一科我们尽量要把它拿过来使用,只有把知识应用到实际生活中

9、才能说这知识是自己的啦。在以后找工作中这些作品就会是我的学习凭证,是我的能力的体现,不难想象一个公司要的是一些实际的东西不需要太多的理论。6.2 在程序设计中的问题和解决:在调试过程中我们也遇到过不少的错误,警告等,有些错误多达二十多个,改得头都 是晕的,有时就想放弃了,但是在老师的帮助下,我慢慢的将程序调好,这都归功于老 师的帮助。有时我们在调试的时候无意间多打了一个空格或者是无意间删了一个字符, 导致程序很多的错误,还有就是在建库的时候不能出错,一但出了一点错就得重新输入。 所以,希望以后程序设计者一定要注意这点,一定要小心,三思而后行。还有就是程序 本身存在很多不足,有待改进。比如修改模

10、块,一次只能改一项数据。附录源程序清单(带注释)#include<stdio.h>#include<string.h>#include<windows.h>#include<conio.h>void homepage(); / 主界面void input();/录入插入void display。;/显示全部成绩void del();/删除记录void sort();/排序void waiting。;/等待界面void quit();/退出界面struct studentint num;char name15;float score3;float

11、avg;);int count=0; /当前学生个数int sort_type=0; /当前排序类型struct student stu10;void main()(int i,k=0;char username15,pwd6;system("color 3d");printf("nn");9 s:4.piinii(i1n");printf("tI *1n");printf(" t*11n");printf("t1 *1* 1n");printf(" t* 1*1 * 1n&

12、quot;);printf(" t*1 *AA*欢迎使用班级成绩管理系统*A_A* *1 * 1n");printf(" t* 1*1 * 1n");printf(" t*O(1 * 1n_n)0湖南工程学院O(n_n)O *n");printf(" t* 1*1 * 1n");printf(" t*1*网夕攵丁和 d nndBE冉盅亦中*I*1 n");1网巾1001 旅MJ少:贝廉力于|printf(" t* 1*I * |n");printf(" t* 1*2

13、011.06.25*I * |n");printf(" t* 1*I * |n");printf("t1 *1* |n");printf(" t*1*1n");printf("t1 *1n");printf(" t1n");for(i=0;i<3;i+)(printf("n请输入管理员账号:");gets(username);printf("n请输入6位密码:");gets(pwd);if(strcmp(username,"wan

14、ggong1001")=0)&&(strcmp(pwd,"324520")=0) printf("n您已经成功登录n");k=1;for(i=0;i<20;i+)printf(".");Sleep(100);system("cls");homepage();break;elseprintf("n用户名或密码无效请重新输入:n");continue;if(k=0)printf("n连续输入错误3次将退出程序n");Sleep(2000);quit

15、();void homepage()char n; printf("nn"); printf("ti1n");printf("t1*n");printf("t1 *n");printf("t1 *1.录入成绩*2.显示成绩*n");printf("t1 *n");printf("t1*n");printf("t1 *n");printf("t1 *3.删除记录*4.排序成绩*n");printf("t1 *

16、n");printf("t1*n");printf("t1 *n");printf("t1 *0.退出程序*n");printf("t1 *n");printf("t1*n");printf("t11n");while (n!='1')&&(n!=2)&&(n!='3')&&(n!='4')&&(n!='0') printf("n

17、请选择:");fflush(stdin);scanf("%c",&n);switch(n)case '1':input(); break; case '2':if(count<10) display。; else printf("记录数已满n");Sleep(2000);system("cls"); homepage(); break;case '3':del();break;case '4':sort();case '0':qui

18、t();break;default:printf("n选项错误 n"); void display。int i;char c;system("cls");switch(sort_type)case 0:printf("tt break;case 1: printf("tt break;case 2: printf("tt break;case 3: printf("tt break;case 4: printf("tt break;case 5: printf("tt break;未排序:nn&

19、quot;);按学号排序:nn");按c语言成绩排序:nn");按数学成绩排序:nn");按英语成绩排序:nn");按平均成绩排序:nn");printf("t学号t姓名tc语言t数学t英语t平均成绩n");for(i=0;i<count;i+) printf("t%dt%st%5.2ft%5.2ft%5.2ft%5.2fn",stui.num,stui.name,stui.score0 ,stui.score1,stui.score2,stui.avg);printf("nn按任意键返回

20、n");c=getch();system("cls");homepage();void input()int i,numcheck;char c;system ("cls");doprintf("学号:n");scanf("%d",&stucount.num);numcheck=1;if(stucount.num<0)printf("请输入正整数:n");for(i=0;i<count;i+) if(stucount.num=stui.num)numcheck=0;

21、printf("学号重复,重新输入:n");while(!numcheck);printf("姓名:n");fflush(stdin);gets(stucount.name);for(i=0;i<3;i+)printf("第门课成绩:n",i+1);scanf("%f",&stucount.scorei);stucount.avg=(stucount.score0+stucount.score1+stucount.score2)/3;printf("是否继续输入(y/n):n");

22、doc=getchar();if(c='y'|c='Y') count+;if(count<10) input();else记录数已满n");printf(" Sleep(2000); system("cls"); homepage();else if(c='n'|c='N')count+;system("cls");homepage();else;while(c!=y)&&(c!='n')&&(c!='Y&#

23、39;)&&(c!='N');void del()int i,j,del_num,match=0;char c;system("cls");printf("请输入要删除的学生学号:n");scanf("%d",&del_num);waiting。;for(i=0;i<count;i+)if(stui.num=del_num)match=1;for(j=i;j<count;j+)/*stuj.num=stuj+1.num;strcpy(stuj.name,stuj+1.name);st

24、uj.score0=stuj+1.score0;stuj.score1=stuj+1.score1;stuj.score2=stuj+1.score2;stuj.avg=stuj+1.avg;*/stuj=stuj+1;if(!match)printf("没有要找的学号.n");printf("是否继续删除?(y/n)");fflush(stdin); doc=getchar();if(c='y'|c='Y') count-;del();else if(c='n'|c='N') count-

25、;system("cls");homepage();else;while(c!='y')&&(c!='n');void sort()int i,j;int choice;struct student temp;system("cls");printf("tt请选择排序功能:n");printf("t1.按学号排序n");printf("t2.按c语言成绩排序n");printf("t3.按数学成绩排序n");printf(&qu

26、ot;t4.按英语成绩排序n");printf("t5. do按平均成绩排序n");scanf("%d",&choice);while(choice!=1)&&(choice!=2)&&(choice!=3)&&(choice!=4)&&(choice!=5); switch(choice)case 1:for(i=0;i<count-1;i+)for(j=0;j<count-i-1;j+)if(stuj.num>stuj+1.num)temp=stuj;

27、stuj=stuj+1;stuj+1=temp;sort_type=1;break;case 2:for(i=0;i<count-1;i+)for(j=0;j<count-i-1;j+)if(stuj.score0<stuj+1.score0)temp=stuj;stuj=stuj+1;stuj+1=temp;sort_type=2;break;case 3:for(i=0;i<count-1;i+)for(j=0;j<count-i-1;j+)if(stuj.score1<stuj+1.score1)temp=stuj;stuj=stuj+1;stuj+1

28、=temp;sort_type=3;break;case 4:for(i=0;i<count-1;i+)for(j=0;j<count-i-1;j+)if(stuj.score2<stuj+1.score2)temp=stuj;stuj=stuj+1;stuj+1=temp;sort_type=4;break;case 5:for(i=0;i<count-1;i+)for(j=0;j<count-i-1;j+)if(stuj.avg<stuj+1.avg)temp=stuj;stuj=stuj+1;stuj+1=temp;sort_type=5;break;

29、system("cls");waiting。; homepage();void waiting。int i;printf("nt请稍侯");for(i=0;i<25;i+)switch(i%4)case 1:printf("b");break;case 2:printf("b-");break;case 3:printf("b/");break;case 0:printf("b|");break;Sleep(100);system("cls");vo

30、id quit()system("cls");printf("nn");printf("tn");printf("t1*n");printf("tI *n");printf("tI *AA*谢谢使用班级成绩管理系统*AA*n");printf("tI *n");printf("tI *AA*A*力心母,大 An");printf("tI *n");printf("tI *湖南工程学院n");pri

31、ntf("tI *计算机与通信学院网络工程1001 班*n");printf("t1*n")printf("t n'n");附:课程设计报告装订顺序:封面、任务书、目录、正文、评分、附件(A4大小的图纸及程序清单)。正文的格式:一级标题用3号黑体,二级标题用四号宋体加粗,正文用小四号宋体;行距为22。正文的内容:一、课题的主要功能;二、课题的功能模块的划分(要求画出模块图);三、主要功能的实现(至少要有一个主要模块的流程图);四、程序调试;五、总结;六、附件(所有程序的原代码, 要求对程序写出必要的注释)正文总字数要求在5000字以上(不含程序原代码)计算机科学与技术系课程设计评分表课题名称:班级成绩管理系统项目评价设计方案的合理性与创造性设计与调试结果设计说明书的质量答辩陈述与回答问题情况课程设计周表现情况综合成绩教师签名:日 期:(注:1.此页附在课程设计报告之后;2.综合成绩按优、良、中、及格和不及格五级评定。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1