c语言班级成绩管理系统_第1页
c语言班级成绩管理系统_第2页
c语言班级成绩管理系统_第3页
c语言班级成绩管理系统_第4页
c语言班级成绩管理系统_第5页
已阅读5页,还剩14页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

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

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

3、件均保存在软盘中;7 .按本任务书的要求,按附录的要求编写课程设计报告( Word文档格式)。 并用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分目录一、功能简介错误!未定义书签。.1主要功能介二、概要设计2.1 程序的模块2.2 程序流程三、详细设计3.1 系统总体结构3.2 学生信息录入3.3 成绩查询系统3.4 成绩删除模块3.5 排序统计系统3.6 退出系统四、课程设计总结6.1 课程设计心得6.2

4、在程序设计中的问题和解决附录源程序清单(带注释)计算机与通信学院课程设计评分表一、功能简介1.1 主要功能介绍1、本系统采用一个结构体数组,每个数据的结构包括:学号、姓名、M门课程名称。2、本程序具有:(1)成绩录入(2)成绩显示(3)成绩删除(4)成绩排序、统计(5) 退出系统二、击飕:设计2.1程序的模块主界面统模块图如下:修改流程查询流程三、详细设计3.1系统总体结构3.2学生信息录入3.3成绩查询系统3.4成绩删除模块3.5排序统计系统3.6退出系统六、课程设计总结6.1课程设计心得:课程设计给我一个学以致用的机会,刚开始的时候还以为学这黑黑的东西没 用,只是一些简单的计算。经过了这次

5、的练习我才发现原来的黑屏有它自己的好处, 通过学习也发现原来这种黑屏就是那些应用程序的原型,不论你以后学程序开发还是 网页的制作都有很好大好处,这些基础是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程 随着科学技术发展的日新月异,当今计算机应用在生活中可以说得是无处不在。因此 作为二十一世纪的大学来说掌握计算机开发技术是十分重要的。回顾起此次课程设 计,至今我们仍感慨颇多,的确,自从拿到题目到完成整个编程,从理论到实践,可 以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在 书本上所没有学到过的

6、知识。通过这次课程设计使我们懂得了理论与实际相结合是很 重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从 理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的 能力。通过这次的学习我发现以后不管是哪一科我们尽量要把它拿过来使用,只有把知 识应用到实际生活中才能说这知识是自己的啦。在以后找工作中这些作品就会是我的 学习凭证,是我的能力的体现,不难想象一个公司要的是一些实际的东西不需要太多 的理论。6.2在程序设计中的问题和解决:在调试过程中我们也遇到过不少的错误,警告等,有些错误多达二十多个,改得头 都是晕的,有时就想放弃了,但是在老师的帮助下,我

7、慢慢的将程序调好,这都归功 于老师的帮助。有时我们在调试的时候无意间多打了一个空格或者是无意间删了一个 字符,导致程序很多的错误,还有就是在建库的时候不能出错,一但出了一点错就得 重新输入。所以,希望以后程序设计者一定要注意这点,一定要小心,三思而后行。 还有就是程序本身存在很多不足,有待改进。比如修改模块,一次只能改一项数据。 附录源程序清单(带注释)#include<stdio.h>#include<string.h>#include<windows.h>#include<conio.h>void homepage();/ 主界面void i

8、nput();/录入插入void display。;/显示全部成绩void del();删除记录void sort();/排序void waiting。;等待界面void quit();退出界面struct studentint num;char name15;float score3; float avg;int count=0;/当前学生个数int sort_type=0;/当前排序类型struct student stu10;void main() int i,k=0;char username15,pwd6;system("color 3d");printf(&qu

9、ot;nn");printf(" printf(" printf(" printf(" printf("t i1n") I 'n") I 'n") I 'n") I n")tttt*1 *111*11 *1 *n*I *I *printf("t1*1 *A_A*欢迎使用班级成绩管理系统*A_A*I *1 n")printf(" printf(" printf(" printf(" printf(&quo

10、t; printf(" printf(" printf(" printf(" printf(" printf("t* * * n,);t* *O(n_n)O 湖wx程学院O(n_n)O* | * | n")t* | * | * | n");t* | *网络工程1001张剑张贵廉开宇* | * | n");t* | * | * | n");t* | * | * | n");t* | * | * | n");t* | *| * | n");*1 1* I Mn.t1 n

11、 );t*| n");f _|tn );for(i=0;i<3;i+)(printf("n请输入管理员账号:");gets(username);printf("n请输入6位密码:");gets(pwd);if(strcmp(username,"wanggong1001")=0)&&(strcmp(pwd,"324520")=0) (printf("n您已经成功登录n");k=1;for(i=0;i<20;i+)(printf(".");S

12、leep(100);system("cls");homepage();break;elseprintf("n用户名或密码无效请重新输入:n");continue;if(k=0)printf("n连续输入错误3次将退出程序n");Sleep(2000);quit();void homepage()(char n;printf("nn");printf("tprintf("t*n");I n");printf("t* | n");printf("t*

13、1.录入成绩*2.显小成绩* | n");printf("t* | n");printf("t*1 n");printf("t* | n");printf("t*3.删除记录*4.排序成绩* | n");printf("t* | n");printf("t*1 n");printf("t* | n");printf("t*0.退出程序* | n");printf("t* | n");printf("

14、;t*1 n");printf("t1n");while (n!='1')&&(n!=2)&&(n!='3')&&(n!='4')&&(n!='0') printf("n 请选择:");fflush(stdin);scanf("%c",&n);switch(n)case '1':input();break;case '2':if(count<10)dis

15、play。;elseprintf("记录数已满n");Sleep(2000);system("cls");homepage();break;case '3':del();break;case '4':sort();case '0':quit();break;default:printf("n 选项错误 n");void i;char c;system("cls");switch(sort_type)case 0:printf("tt

16、未排序:n'n");break;case 1:printf("tt 按学号排序:n'n");break;case 2:printf("tt按c语言成绩排序:nn");break;case 3:printf("tt按数学成绩排序:nn");break;case 4:printf("tt按英语成绩排序:nn");break;case 5:printf("tt按平均成绩排序:n'n");break;printf("t学号t姓名tc语言t数学t英语t平均成绩n

17、");for(i=0;i<count;i+) printf("t%dt%st%5.2ft%5.2ft%5.2ft%5.2fn",stui.num,,stui.score0,stui.score1,stui.scor e2,stui.avg);printf("nn按任意键返回n");c=getch();system("cls");homepage();void input()int i,numcheck;char c;system ("cls"); do printf("学

18、号: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;printf("学号重复,重新输入:n");while(!numcheck);printf("姓名:n");fflush(stdin);gets();for(i=0;i<3;i+)prin

19、tf("第d 门课成绩:n",i+1);scanf("%f",&stucount.scorei);stucount.avg=(stucount.score0+stucount.score1+stucount.score2)/3; printf("是否继续输入(y/n):n");doc=getchar();if(c='y'|c='Y')count+;if(count<10) input();elseprintf("记录数已满n");Sleep(2000);system(&

20、quot;cls"); homepage();else if(c='n'|c='N')count+;system("cls"); homepage();else;while(c!='y')&&(c!='n')&&(c!='Y')&&(c!='N');void del()int i,j,del_num,match=0;char c;system("cls");printf("请输入要删除的学生学

21、号: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+1.name);stuj.score0=stuj+1.score0;stuj.score1=stuj+1.score1;stuj.score2=stuj+1.score2;stuj.avg=stuj+1.avg;*/stuj=stuj+1;if(!match

22、)printf("没有要找的学号.n");printf("是否继续删除?(y/n)");fflush(stdin);doc=getchar();if(c='y'|c='Y')count-;del();else if(c='n'|c='N')count-;system("cls"); homepage();else;while(c!='y')&&(c!='n');void sort()int i,j;int choice;st

23、ruct student temp;system("cls");printf("tt请选择排序功能:n");printf("t1.按学号排序 n");printf("t2.按c语言成绩排序n");printf("t3.按数学成绩排序n");printf("t4.按英语成绩排序n");printf("t5.按平均成绩排序n");doscanf("%d",&choice);while(choice!=1)&&(cho

24、ice!=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;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

25、+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=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=stu

26、j;stuj=stuj+1;stuj+1=temp;sort_type=4;break;case 5:for(i=0;i<count-1;i+)forO=0;j<count-i-1;j+)if(stuj.avg<stuj+1.avg)temp=stuj;stuj=stuj+1; stuj+1=temp;sort_type=5; break;system("cls");waiting。; homepage();void 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/&q

温馨提示

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

最新文档

评论

0/150

提交评论