最新c语言课程设计--学生成绩系统.doc

上传人:1595****071 文档编号:33829769 上传时间:2022-08-12 格式:DOC 页数:22 大小:151.50KB
返回 下载 相关 举报
最新c语言课程设计--学生成绩系统.doc_第1页
第1页 / 共22页
最新c语言课程设计--学生成绩系统.doc_第2页
第2页 / 共22页
点击查看更多>>
资源描述

《最新c语言课程设计--学生成绩系统.doc》由会员分享,可在线阅读,更多相关《最新c语言课程设计--学生成绩系统.doc(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精品资料c语言课程设计-学生成绩系统.*题目七:学生成绩管理系统设计学生成绩信息包括:学期,学号,班别,姓名,四门课程成绩(语文、数学、英语和计算机)等。主要功能:(1) 能按学期、按班级完成对学生成绩的录入、修改(2) 能按班级统计学生的成绩,求学生的总分及平均分(3) 能查询学生成绩,不及格科目及学生名单(4) 能按班级输出学生的成绩单要求:使用二进制文件方式存储数据,系统以菜单方式工作源代码:#include#include#include#includestruct Studentint cls;char nam10;char num10;int chinese;int english

2、;int computer;int math;stud1100,stud2100;int menu()char a;while(a7|a0)system(cls);printf( 欢迎使用学生成绩管理系统 n);printf( 制作人:章建 n);printf(* 学生成绩管理系统 *n);printf( 1.输入学生成绩n);printf( 2.输出学生成绩n);printf( 3.查找并显示学生成绩n);printf( 4.按姓名查找,修改学生资料n);printf( 5.显示所有学生名单n);printf( 6.查找并删除学生信息n);printf( 7.从文件读取数据n);printf

3、( 0.储存学生资料并退出系统n);printf(*n);printf(请选择(0-7)n);a=getchar();return(a-0);/*/int Input(Student stud,int n) /输入数据(第一学期)。int i=0;char sign,x10;for(;sign !=n&sign !=N;)printf( 姓名:);scanf(%s,studn+i.nam);printf( 班级:);scanf(%d,&studn+i.cls);printf( 学号:);scanf(%s,studn+i.num);printf( 语文:);scanf(%d,&studn+i.c

4、hinese);printf( 数学:);scanf(%d,&studn+i.math);printf( 英语:);scanf(%d,&studn+i.english);printf( 计算机:);scanf(%d,&studn+puter);gets(x);printf(还有要输入的信息吗?(y/n);scanf(%c,&sign);i+;return(n+i);/*输出数据*/void Display(Student stud, int n)int i;printf( 班级 学号 姓名 语文 数学 英语 计算机 总分 平均分n);for(i=1;i1 & i%10=0)system(pau

5、se);system(pause);/*查找学生显示其信息*/void Query(Student stud,int n)char nam20;printf( 输入其姓名:n); scanf(%s,nam);int i=0;while(strcmp(studi.nam,nam)!=0&in)i+;if(i=n)printf(ttt没有发现该学生的资料!n);return;printf( 学号:%sn,studi.num);printf( 班级:%dn,studi.cls);printf( 语文:%dn,studi.chinese);printf( 英语:%dn,studi.english);p

6、rintf( 数学:%dn,studi.math);printf( 计算机:%dn,puter);/*删除学生信息*/int Delete(Student stud,int n)char s20;int i=0,j;printf( 请输入要删除的学生的姓名:n);scanf(%s,s);while(strcmp(studi.nam,s)!=0&in) i+; if(i=n) printf(ttt没有发现该学生资料!n);return(n); for(j=i;jn-1;j+) strcpy(studj.num,studj+1.num);strcpy(studj.nam,studj+1.nam);

7、 studj.cls=studj+1.cls;studj.chinese=studj+1.chinese;studj.math=studj+1.math;studj.english=studj+1.english; puter=studj+puter; printf( 当前信息已删除成功!); return(n-1); /*修改信息*/int Revise(Student stud,int n)int i=0;char na10;scanf(%s,na);while(strcmp(studi.nam,na)!=0&in)i+;if(i=n)printf(ttt没有发现该学生的资料!n);pri

8、ntf(修改班级:n);scanf(%d,&studi.cls);printf(修改学号:n);scanf(%s,studi.num);printf(修改语文成绩:n);scanf(%d,&studi.chinese);printf(修改英语成绩:n);scanf(%d,&studi.english);printf(修改数学成绩:n);scanf(%d,&studi.math);printf(修改计算机成绩:n);scanf(%d,&puter);printf(修改成功n);return(n);/*显示学生名单*/void show(Student stud,int n) for(int i=

9、0;in;i+)printf( %sn,studi.nam);system(pause);/*从文件读取数据*/int AddfromText(Student stud, int n) int i=0,number,x=0,y=0;FILE *fp;char filename20;printf( 输入文件名:);scanf(%s,filename);if(fp=fopen(filename,rb)=NULL)printf( 无法打开文件);system(pause);return(n);fscanf(fp,%d,&number);for(;inumber;)fscanf(fp,%d%s%s%d

10、%d%d%d%d%dn,&studn+i.cls,&studn+i.num,&studn+i.nam,&studn+i.chinese,&studn+i.math,&studn+i.english,&studn+puter,&x,&y);i+;n+=number;fclose(fp);printf( 读入成功!);system(pause);return(n);/*将所有记录写进文件*/void WritetoText(Student stud,int n) int i=0;FILE *fp;char filename20;printf( 将资料输入文件n);printf( 输入文件名n);s

11、canf(%s,filename);if(fp=fopen(filename,w+)=NULL)printf( 无法打开文件n);system(pause);return;fprintf(fp,%dn,n); for(;in;)fprintf(fp,%-8d%-8s%-8s%-5d%-5d%-5d%-5d%-5d%-5dn,studi.cls,studi.num,studi.nam,studi.chinese,studi.math,studi.english,puter,studi.chinese+studi.math+studi.english+puter,(studi.chinese+st

12、udi.math+studi.english+puter)/4);i+;fclose(fp);/*主函数调用*/void main()int n1=0,n2=0;for(;)switch(menu()case 1:int t;printf( 输入学生资料n);printf( 输入学期);scanf(%d,&t);if(t=1)n1=Input(stud1,n1);else if(t=2)n2=Input(stud2,n2);break;case 2:printf( 输出所有学生资料n);if(n1!=0)printf( 第一学期n);Display(stud1,n1);if(n2!=0)pri

13、ntf( 第二学期n);Display(stud2,n2);break;case 3:int r;printf( 查找学生n);printf( 请输入学期n);scanf(%d,&r);if(r=1)Query(stud1,n1);else if(r=2)Query(stud2,n2);system(pause);break;case 4:int p;printf( 修改学生资料n);printf( 请输入学期n);scanf(%d,&p);if(p=1)printf( 输入你要修改的学生的姓名:);n1=Revise(stud1,n1);else if(p=2)printf( 输入你要修改的

14、学生的姓名:);n2=Revise(stud2,n2);system(pause);break;case 5:printf( 显示所有学生名单:n);if(n1!=0)printf( 第一学期n);show(stud1,n1);if(n2!=0)printf( 第二学期n);show(stud2,n2);system(pause);break; case 6:printf( 查找并删除学生信息n);int o;printf( 请输入学期:);scanf(%d,&o);if(o=1)printf( 第一学期n);n1=Delete(stud1,n1);if(o=2)printf( 第二学期n);

15、n2=Delete(stud2,n2);system(pause);break;case 7:printf( 从文件中读入数据n);printf( 读取第一学期的文件n);n1=AddfromText(stud1,n1);printf( 读取第二学期的文件n);n2=AddfromText(stud2,n2);break;case 0:printf( 将所有资料写入文件n);if(n1!=0)printf( 存储第一学期学生资料n);WritetoText(stud1,n1);if(n2!=0)printf( 存储第二学期学生资料n);WritetoText(stud2,n2);printf( 输入成功n);int b;printf( 请确定是否退出系统n);printf( 0.退出系统n);printf( 1.返回n); scanf(%d,&b);if(b=0)printf( 谢谢使用n);system(pause);exit(0);system(pause);break;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁