学生成绩管理系统.docx
- 文档编号:11617106
- 上传时间:2023-03-28
- 格式:DOCX
- 页数:11
- 大小:35.08KB
学生成绩管理系统.docx
《学生成绩管理系统.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统.docx(11页珍藏版)》请在冰豆网上搜索。
学生成绩管理系统
学生成绩管理系统
【摘要】
本系统全称为学生成绩管理系统。
根据开发要求,它主要应用于教育系统,完成对日常的教学、教务、教师以及学生的计算机化的管理。
开发学生成绩管理系统可使学院教职员工减轻工作压力,比较系统地对教务、教学上的各项服务和信息进行管理,同时,可以减少劳动力的使用,加快查询速度、加强管理,以及国家各部门关于信息化的步伐,使各项管理更加规范化。
目前,学校工作繁杂、资料重多。
目前,管理信息系统已进入高校,但还未普及,而对于学生成绩管理来说,目前还没有一套完整的、统一的系统。
因此,开发一套适和大众的、兼容性好的系统是很有必要的。
本系统管理内容广泛,全面涉及了教务教学上的各项服务,包括学生成绩管理,其中有学生成绩管理;学生管理等等。
在开发过程中,注意使其符合操作的业务流程,并力求系统的全面性、通用性,使得本系统不只适用于一家教育机构。
在开发方法的选择上,选择了生命周期法与原型法相结合的方法,遵循系统调查研究、系统分析、系统设计和系统实施四个主要阶段进行设计,而在具体的设计上,采取了演化式原型法,随着用户的使用及对系统了解的不断加深,对某一部分或几部分进行重新分析、设计、实施。
在开发工具的选择上,主要利用Delphi7.0编程语言进行开发,使用其自带的数据库,从而保证了数据的完整性与一致性。
本论文主要从系统分析、系统设计、系统实施与使用等几个方面进行介绍。
【关键词】信息管理系统信息化成绩管理数据库
一、课程设计目的:
本课程设计为学生提供了一个既动手又动脑,自学,查资料,独立实践的机会。
将本学期课本上的理论知识和实际有机的结合起来,锻炼学生实际分析问题和解决问题的能力,提高学生适应实际、实践编程的能力,使对C++系统编程有一个大致的了解。
二、需求分析:
本系统设计者力求根据学生成绩管理的需要,而建立一个“学生成绩管理系统”,以方便对成绩的各项管理操作。
开发目的:
①能对成绩进行录入和修改;
②能计算每个学生的平均成绩以及各门功课的平均成绩;
③能根据学生的学号来查询该学生的成绩;
④能删除该学生的记录;
⑤能根据每个学生的平均成绩来他们进行排序。
【流程图】
【源代码】
#include"stdio.h"
#include"string.h"
#defineN1000
voidmenu();
intpassword();
intdedao();
intuninque(structSTUDENTshu[],intlen,intxuehao);
voidshuchu(structSTUDENTshu[],intlen);
voidsend(structSTUDENTshu[],intlen);
intreadFromFile(structSTUDENTshu[]);
voidchaxun(structSTUDENTshu[],intlen);
voidpaixu(structSTUDENTshu[],intlen);
structSTUDENT
{
intnum;
charname[10];
intscore;
}shu[N];
main()
{intlen=0,key,choice;
do{
key=password();
}while(key==0);
while
(1)
{menu();
printf("请输入选项<1,2,3,4,5,6,7>\n");
scanf("%d",&choice);
switch(choice)
{
case1:
printf("输入信息函数\n");len=dedao(shu,len);break;
case2:
printf("输出函数被调用\n");shuchu(shu,len);break;
case3:
printf("保存到文件函数被调用\n");send(shu,len);break;
case4:
printf("从文件读函数被调用\n");len=readFromFile(shu);break;
case5:
printf("按学号查询函数被调用\n");chaxun(shu,len);break;
case6:
printf("按成绩排序函数被调用\n");paixu(shu,len);break;
case7:
exit(0);break;
}
}
}
voidmenu()
{
printf("\n");
printf("*******************************************\n");
printf("*学生成绩管理系统2.0*\n");
printf("*1.输入信息*\n");
printf("*2.输出信息*\n");
printf("*3.保存到文件*\n");
printf("*4.从文件读*\n");
printf("*5.按学号查询*\n");
printf("*6.按成绩排序(由大到小)*\n");
printf("*7.程序结束*\n");
printf("*******************************************\n");
}
intpassword()
{
chara[100];
charkey[]="asd";
printf("请输入密码\n");
scanf("%s",&a);
if(strcmp(a,key)==0)
return1;
else
return0;
}
intdedao(structSTUDENTshu[],intlen)
{inti=len;
intflag=0;
intxuehao,bank,chengji;
while(i { while (1) { printf("学号"); scanf("%d",&xuehao); if(xuehao==0) {flag=1; break; } bank=uninque(shu,i,xuehao); if(bank==0) {shu[i].num=xuehao; break;} } if(flag==1) break; printf("姓名"); scanf("%s",&shu[i].name); while (1) { printf("成绩"); if(scanf("%d",&chengji)==1) {break;} printf("输入格式错误,请重新输入! "); while(getchar()! ='\n') continue; } while(getchar()! ='\n') continue; shu[i].score=chengji; i++; } returni; } intuninque(structSTUDENTshu[],intlen,intxuehao) {inti; intbank=0; for(i=0;i { if(xuehao==shu[i].num) bank=1; } returnbank; } voidshuchu(structSTUDENTshu[],intlen) { inti; printf("%-4s%-10s%-3s","学号","姓名","成绩\n\n"); for(i=0;i { printf("%-4d%-10s%-3d",shu[i].num,shu[i].name,shu[i].score); printf("\n"); } printf("\n\n"); } voidsend(structSTUDENTshu[],intlen) { inti; FILE*fp; fp=fopen("d: \\chegnji.txt","wb"); if(fp==NULL) { printf("打开文件出错! \n"); exit(0); } for(i=0;i fwrite(shu+i,sizeof(structSTUDENT),1,fp); fclose(fp); } intreadFromFile(structSTUDENTshu[]) { FILE*fp=NULL; inti=0; fp=fopen("d: \\chegnji.txt","rb"); if(fp! =NULL) { printf("%-4s%-10s%-3s","学号","姓名","成绩\n\n"); while(! feof(fp)) { if(i>=N) break; if(fread(shu+i,sizeof(structSTUDENT),1,fp)) printf("%-4d%-10s%-3d",shu[i].num,shu[i].name,shu[i].score); printf("\n"); i++; } fclose(fp); } i=i-1; returni; } voidchaxun(structSTUDENTshu[],intlen) { inti,nue,b=0; while (1) {printf("inputthestudentnumber(input'0'close)"); scanf("%d",&nue); b=0; if(nue==0) break; for(i=0;i { if(nue==shu[i].num) {printf("%-4s%-10s%-3s","学号","姓名","成绩\n\n"); printf("%-4d%-10s%-3d\n",shu[i].num,shu[i].name,shu[i].score); b=1; } } if(b==0) printf("Thenumberisnotexist! \n"); } } voidpaixu(structSTUDENTshu[],intlen) { inti,j; structSTUDENTtemp; printf("%-4s%-10s%-3s","学号","姓名","成绩\n\n"); for(i=0;i { for(j=i;j { if(shu[j].score>shu[i].score) { temp=shu[j]; shu[j]=shu[i]; shu[i]=temp; } } printf("%-4d%-10s%-3d\n",shu[i].num,shu[i].name,shu[i].score); } } 【心得体会】 通过这次实训,增加了我学习软件技术的兴趣,虽然还不明确软件技术包含的具体内容,但从数据结构这门课程开始,已发现程序设计的乐趣,在学习C语言的过程中也学到了许多计算机应用基础知识,对计算机的机体也有了一个大体的了解。 在实际操作过程中犯的一些错误还会有意外的收获,感觉实训很有意思。 在具体操作中对这学期所学的数据结构的理论知识得到巩固,达到实训的基本目的,也发现自己的不足之出,在以后的上机中应更加注意,同时体会到C语言具有的语句简洁,使用灵活,执行效率高等特点。 发现上机实训的重要作用,特别是对数组和循环有了深刻的理解。 通过实际操作,学会数据结构编程的基本步骤、基本方法,开发了自己的逻辑思维能力,培养了分析问题、解决问题的能力。 深刻体会到“没有做不到的,只有想不到的”,“团结就是力量”,“实践是检验真理的标准”,“不耻下问”……的寓意。 希望以后应多进行这样的实训,加长设间,培养学生独立思考问题的能力,提高实际操作水平。 【参考文献】 严蔚敏,吴伟民.数据结构(C语言版).北京: 清华大学出版社,2001 谭浩强.C程序设计(第二版).北京: 清华大学出版社,2000 吴文虎《程序设计基础》北京: 清华大学出版社,2003 郭福顺,王晓芬,李莲治《数据结构》(修订本),大连理工大学出版社,1997 潘道才,陈一华《数据结构》,电子科技大学出版社,1994
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 成绩管理系统