1、. .#include#include#include#define MAXN 100 /一个班最多的人数#define MAXM 2 /成绩的课程门数int R;void input(); /1.学生成绩新建void sort(); /2.学生成绩插入void load(); /3.学生成绩修改void print(); /4.学生成绩删除void total(); /5.学生成绩统计void search(); /6.学生成绩查询void save(); /7.学生成绩保存void end(); /8.完毕struct studentchar name20; /保存全班XXchar num
2、12; /保存全班学号float scoreMAXM; /保存全班所有课程成绩float sum; /保存全班每个人的总成绩float avg; /保存每个人的平均成绩;struct student sMAXN;struct char subject20; /保存全班所有课程;struct cMAXM;void main() /欢迎首界面int select,l;system(color fC);printf(n);printf(n);printf(n);printf(n);printf( ¥n);printf( * *n);printf( * *n);printf( * 欢迎进入终极一班学生
3、管理系统 *n);printf( * *n);printf( * 一 cf . *n);printf( * 甘总管的多塔生活 *n);printf( * *n);printf( * 凸-凸凸-凸凸-凸凸-凸凸-凸凸-凸凸-凸 *n);printf( ¥n);printf( v n);printf( ( o )( : )n);printf( () : ()() v ()n);printf( n);printf(n);printf(n);printf( 请按任意键进入下一界面n);printf(-n);system(pause);system(color f2);system(color f1);
4、system(color f3);system(color fE);system(color fB);system(color f5);system(color f9);system(color f6);system(color f1);system(color f3);system(color fE);system(color fB);system(color f5);system(color f9);system(color f6);system(color f1);system(color f3);system(color f5);system(color f9);system(colo
5、r f6);system(color fD);system(pause);system(color fC);system(cls); /上面是第一个界面while(1)system(cls);printf( *欢迎进入终极一班学生管理系统*n);printf( *n);printf( * 1.学生成绩新建 囧rz 欢 *n);printf( * := 2.学生成绩插入 迎 *n);printf( * 3.学生成绩修改 来 *n);printf( * 4.学生成绩删除 到 *n);printf( * 5.学生成绩统计 英 *n);printf( * 6.学生成绩查询 雄 *n);printf(
6、* 7.学生成绩保存 联 *n);printf( * 8.退出/撒拉嘿 盟 *n);printf( * ()()()()()() *n);printf( *n);printf(n); printf(n 请输入您的选择编号,回车键继续:n);printf( -n);scanf(%d,&select); do if(select8) printf( 您输入有误,请重新输入,谢谢!n);scanf(%d,&select); l=select; while(l8);switch(select)case 1:input();break; /1.学生成绩新建case 2:sort(); break; /2
7、.学生成绩插入case 3:load(); break; /3.学生成绩修改case 4:print(); break; /4.学生成绩删除case 5:total();break; /5.学生成绩统计 case 6:search();break; /6.学生成绩查询 case 7:save();break; /7.学生成绩保存case 8: end();break; /8.完毕default:printf( 请按相应数学选择系统功能:);void input() /1学生成绩输入成绩模块int i,j,b;float a=0;printf( 请输入该班同学的人数:n);printf( 班同学
8、的人数在1%d之间:n,MAXN);scanf(%d,&R); do if(R100) printf( 您输入有误,请重新输入,谢谢!n);scanf(%d,&R); b=R; while(b100);for(i=0;iMAXM;i+) printf( 请输入该班同学的第%d门课程名称为:n,(i+1);scanf(%s, &ci.subject);for(i=0;iR;i+) printf( 请输入第%d个同学的XX:n,(i+1);scanf(%s,&si.name); printf( 请输入第%d个同学的学号:n,(i+1); scanf(%s,&si.num); printf( 请依次
9、输入%d门学科的成绩:n,MAXM);for(j=0;jMAXM;j+) printf( 请输入课程%s的成绩为:n,cj.subject); scanf(%f,&si.scorej); a=a+si.scorej; si.sum=a;si.avg=si.sum/MAXM;a=0;void sort() /2学生成绩插入成绩模块int i,j,k,b;float a=0;printf( 请输入要插入的学生的位置1%d号:n,R);printf( 第几个学生的位置之后:n);scanf(%d,&k);doif(kR) printf( 您输入有误,请重新输入,谢谢!n);scanf(%d,&k);
10、b=k;while(bR);R=R+1;for(i=R;ik;i-)strcpy(si.name,si-1.name);strcpy(si.num,si-1.num);si.sum=si-1.sum;si.avg=si-1.avg;for(j=0;jMAXM;j+) si.scorej=si-1.scorej;printf( 请输入第%d个同学的XX:n,(k+1);scanf(%s,&sk.name); printf( 请输入第%d个同学的学号:n,(k+1); scanf(%s,&sk.num); printf( 请依次输入%d门学科的成绩:n,MAXM);for(j=0;jMAXM;j+
11、) printf( 请输入课程%s的成绩为:n,&cj.subject); scanf(%f, &sk.scorej); a=a+sk.scorej; sk.sum=a;sk.avg=sk.sum/MAXM;void load() /3学生成绩修改float a=0,hMAXM; int i,j,b;printf( 请输入修改学生的位置1%d 号: n,R);scanf(%d,&i);doif(iR) printf( 您输入有误,请重新输入,谢谢!n);scanf(%d,&i);b=i;while(bR);printf( 请输入%d号的新学号: n,i);scanf(%s,&si-1.name
12、); printf( 请输入%d号的新XX: n,i);scanf(%s,&si-1.num);for(j=0;jMAXM;j+) printf( 请输入课程%s的成绩为:n,&cj.subject); scanf(%f,&hj);si-1.scorej =hj; a=a+si-1.scorej; si-1.sum=a;si-1.avg=si-1.sum/MAXM;void print() /4学生成绩删除int i,j,k,b;printf( 请输入删除学生的位置1%d 号:n,R);scanf(%d,&k); do if(kR) printf( 您输入有误,请重新输入,谢谢!n);scan
13、f(%d,&k); b=k; while(bR);i=k-1;for(i;iR;i+)strcpy(si.name,si+1.name);strcpy(si.num,si+1.num);si.sum=si+1.sum;si.avg=si+1.avg;for(j=0;jMAXM;j+) si.scorej=si+1.scorej;R=R-1;printf(删除成功! n);void total() /5.学生成绩统计int i,j;float aMAXM,b=0;printf(学号: XX:课程%s的分数: 课程%s的分数: 总成绩: 平均成绩:n,c0.subject,c1.subject);
14、for(i=0;iR;i+) printf(%s%10.2s%16.2f%16.2f%16.2f%16.2fn,si.num, si.name,si.score0 ,si.score1,si.sum,si.avg); for(i=0;iMAXM;i+) for(j=0;jR;j+) b=b+sj.scorei; ai=b/R; b=0; for(i=0;iMAXM;i+) printf( 全班课程%s的平均分为:%f n,ci.subject,ai); printf(排序完毕.n);system(pause);void search() /6查询成绩模块int search1();int se
15、arch2();int select,index,b;while(1)printf( *n);printf( * 1.按学号查询 * n);printf( * 2.按XX查询 * n);printf( * 0.返回 * n);printf( * 请输入您的选择编号: * n);printf( *n);scanf(%d,&select); do if(select2) printf( 您输入有误,请重新输入,谢谢!n);scanf(%d,&select); b=select; while(b2);switch(select)case 1:index=search1(); break;case 2
16、:index=search2();break;case 0:return;if(index!=-1)int i;printf( *n);printf( 学号:%s n, sindex.num);printf( XX:%s n, sindex.name);printf( 总成绩:%f n, sindex.sum);printf( 平均成绩:%f n, sindex.avg);for(i=0;iMAXM;i+)printf( 课程%s的成绩为:%f n, ci.subject,sindex.scorei);printf( *n);else printf(没有这个同学。n);int search1(
17、) /按学号查询模块int i;char s_num12;printf( 请输入要查询的学号:);scanf(%s,&s_num);for(i=0;iMAXN;i+)if(strcmp(si.num,s_num)=0)break;if(iMAXN)return i;else return -1;int search2() /按XX查询模块int i;char s_name10;printf( 请输入要查询的XX:);scanf(%s,&s_name);for(i=0;iMAXN;i+)if(strcmp(si.name,s_name)=0)break;if(iMAXN)return i;els
18、e return -1;void save() /7保存成绩模块FILE *fp;int i,j,k=0;char filename20;printf(请输入文件名(请以 .txt 完毕): );scanf(%s,filename);if(fp=fopen(filename, w)=NULL)printf(翻开文件失败.n);return;fprintf(fp, 该班学生数和所修课程数分别为:%d,%dnn,R,MAXM);fprintf(fp, 该班所修的课程有:n);for(j=0;jMAXM;j+)fprintf(fp, 课程%d:%sn,1+j,cj.subject);fprintf(
19、fp, 下面是该班学生信息:nn);for(i=0;iR;i+)fprintf(fp, 学号:%s XX:%sn,si.num,si.name);for(j=0;jMAXM;j+)fprintf(fp, %s:%5.2fn,cj.subject,sk.scorej);fprintf(fp, 学生总成绩:%5.2fn学生平均成绩:%5.2fnn,si.sum,si.avg);k+;fclose(fp);printf(nn 保存成功nnnn);fclose(fp);printf(保存完毕.n);void end() /8.完毕 system(cls); system(color f4); prin
20、tf(n); printf(n); printf(n); printf(n);printf( ?n); printf( ?n);printf(n); printf( ?n);printf(n); printf( ?n);printf(n); printf( ? n);printf(n); printf( n);printf(n); printf( ?n);printf(n); printf( ?n);printf(n); printf( n);printf(n); printf( ? n);printf(n); printf( ?n);printf(n);printf( ?n);printf(
21、n);printf( ? n); printf(n); printf(n); printf(n); printf(nn 谢谢您的使用。BYE!nnnnnnnn); system(color f2);system(color f1);system(color f3);system(color fE);system(color fB);system(color f5);system(color f9);system(color f6);system(color f1);system(color f3);system(color fE);system(color fB);system(color f
22、5);system(color f9);system(color f6);system(color f1);system(color f3);system(color f5);system(color f9);system(color f6); exit(0);.欢迎您的光临,wdrd文档下载后可以修改编辑。双击可以删除页眉页脚。谢谢!单纯的课本容,并不能满足学生的需要,通过补充,到达容的完善教育之通病是教用脑的人不用手,不教用手的人用脑,所以一无所能。教育革命的对策是手脑联盟,结果是手与脑的力量都可以大到不可思议。.文.文.优质文?页眉页脚?专业资料?.w?. . .z. .?. . 专业资料. .word.zl.