c语言学生成绩管理系统代码.doc
《c语言学生成绩管理系统代码.doc》由会员分享,可在线阅读,更多相关《c语言学生成绩管理系统代码.doc(17页珍藏版)》请在咨信网上搜索。
. . #include<stdio.h> #include<string.h> #include<stdlib.h> #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 student { char name[20]; //保存全班XX char num[12]; //保存全班学号 float score[MAXM]; //保存全班所有课程成绩 float sum; //保存全班每个人的总成绩 float avg; //保存每个人的平均成绩 }; struct student s[MAXN]; struct { char subject[20]; //保存全班所有课程 }; struct c[MAXM]; void main() //欢迎首界面 { int select,l; system("color fC"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf(" ¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥\n"); printf(" * *\n"); printf(" * *\n"); printf(" * 欢迎进入终极一班学生管理系统 *\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"); 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("color 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(" * ▄︻┻═┳ 7.学生成绩保存 联 *\n"); printf(" * ∝╬══→ 8.退出/撒拉嘿 盟 *\n"); printf(" * (⊙_⊙)(⊙_⊙)(⊙_⊙)(⊙_⊙)(⊙_⊙)(⊙_⊙) *\n"); printf(" ******************************************************\n"); printf("\n"); printf("\n 请输入您的选择编号,回车键继续:\n"); printf(" ---------------------------------------------------------------------------\n"); scanf("%d",&select); do { if(select<1||select>8) { printf(" 您输入有误,请重新输入,谢谢!!!\n"); scanf("%d",&select); } l=select; } while(l<1||l>8); switch(select) { case 1:input();break; //1.学生成绩新建 case 2:sort(); break; //2.学生成绩插入 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(" 班同学的人数在1~%d之间:\n",MAXN); scanf("%d",&R); do { if(R<1||R>100) { printf(" 您输入有误,请重新输入,谢谢!!!\n"); scanf("%d",&R); } b=R; } while(b<1||b>100); for(i=0;i<MAXM;i++) { printf(" 请输入该班同学的第%d门课程名称为:\n",(i+1)); scanf("%s", &c[i].subject); } for(i=0;i<R;i++) { printf(" 请输入第%d个同学的XX:\n",(i+1)); scanf("%s",&s[i].name); printf(" 请输入第%d个同学的学号:\n",(i+1)); scanf("%s",&s[i].num); printf(" 请依次输入%d门学科的成绩:\n",MAXM); for(j=0;j<MAXM;j++) { printf(" 请输入课程%s的成绩为:\n",c[j].subject); scanf("%f",&s[i].score[j]); a=a+s[i].score[j]; } s[i].sum=a; s[i].avg=s[i].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); do { if(k<1||k>R) { printf(" 您输入有误,请重新输入,谢谢!!!\n"); scanf("%d",&k); } b=k; } while(b<1||b>R); R=R+1; for(i=R;i>k;i--) { strcpy(s[i].name,s[i-1].name); strcpy(s[i].num,s[i-1].num); s[i].sum=s[i-1].sum; s[i].avg=s[i-1].avg; for(j=0;j<MAXM;j++) { s[i].score[j]=s[i-1].score[j]; } } printf(" 请输入第%d个同学的XX:\n",(k+1)); scanf("%s",&s[k].name); printf(" 请输入第%d个同学的学号:\n",(k+1)); scanf("%s",&s[k].num); printf(" 请依次输入%d门学科的成绩:\n",MAXM); for(j=0;j<MAXM;j++) { printf(" 请输入课程%s的成绩为:\n",&c[j].subject); scanf("%f", &s[k].score[j]); a=a+s[k].score[j]; } s[k].sum=a; s[k].avg=s[k].sum/MAXM; } void load() //3学生成绩修改 { float a=0,h[MAXM]; int i,j,b; printf(" 请输入修改学生的位置1~%d 号: \n",R); scanf("%d",&i); do { if(i<1||i>R) { printf(" 您输入有误,请重新输入,谢谢!!!\n"); scanf("%d",&i); } b=i; } while(b<1||b>R); printf(" 请输入%d号的新学号: \n",i); scanf("%s",&s[i-1].name); printf(" 请输入%d号的新XX: \n",i); scanf("%s",&s[i-1].num); for(j=0;j<MAXM;j++) { printf(" 请输入课程%s的成绩为:\n",&c[j].subject); scanf("%f",&h[j]); s[i-1].score[j] =h[j]; a=a+s[i-1].score[j]; } s[i-1].sum=a; s[i-1].avg=s[i-1].sum/MAXM; } void print() //4学生成绩删除 { int i,j,k,b; printf(" 请输入删除学生的位置1~%d 号:\n",R); scanf("%d",&k); do { if(k<1||k>R) { printf(" 您输入有误,请重新输入,谢谢!!!\n"); scanf("%d",&k); } b=k; } while(b<1||b>R); i=k-1; for(i;i<R;i++) { strcpy(s[i].name,s[i+1].name); strcpy(s[i].num,s[i+1].num); s[i].sum=s[i+1].sum; s[i].avg=s[i+1].avg; for(j=0;j<MAXM;j++) { s[i].score[j]=s[i+1].score[j]; } } R=R-1; printf("删除成功! \n"); } void total() //5.学生成绩统计 { int i,j; float a[MAXM],b=0; printf("学号: XX:课程%s的分数: 课程%s的分数: 总成绩: 平均成绩:\n",c[0].subject,c[1].subject); for(i=0;i<R;i++) { printf("%s%10.2s%16.2f%16.2f%16.2f%16.2f\n",s[i].num, s[i].name,s[i].score[0] ,s[i].score[1],s[i].sum,s[i].avg); } for(i=0;i<MAXM;i++) { for(j=0;j<R;j++) { b=b+s[j].score[i]; } a[i]=b/R; b=0; } for(i=0;i<MAXM;i++) { printf(" 全班课程%s的平均分为:%f \n",c[i].subject,a[i]); } printf("排序完毕.\n"); system("pause"); } void search() //6查询成绩模块 { int search1(); int search2(); 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(select<0||select>2) { printf(" 您输入有误,请重新输入,谢谢!!!\n"); scanf("%d",&select); } b=select; } while(b<0||b>2); switch(select) { case 1:index=search1(); break; case 2:index=search2();break; case 0:return; } if(index!=-1) { int i; printf(" *****************************************************************\n"); printf(" 学号:%s \n", s[index].num); printf(" XX:%s \n", s[index].name); printf(" 总成绩:%f \n", s[index].sum); printf(" 平均成绩:%f \n", s[index].avg); for(i=0;i<MAXM;i++) printf(" 课程%s的成绩为:%f \n", c[i].subject,s[index].score[i]); printf(" *****************************************************************\n"); } else printf("没有这个同学。\n"); } } int search1() //按学号查询模块 { int i; char s_num[12]; printf(" 请输入要查询的学号:"); scanf("%s",&s_num); for(i=0;i<MAXN;i++) if(strcmp(s[i].num,s_num)==0) break; if(i<MAXN) return i; else return -1; } int search2() //按XX查询模块 { int i; char s_name[10]; printf(" 请输入要查询的XX:"); scanf("%s",&s_name); for(i=0;i<MAXN;i++) if(strcmp(s[i].name,s_name)==0) break; if(i<MAXN) return i; else return -1; } void save() //7保存成绩模块 { FILE *fp; int i,j,k=0; char filename[20]; printf("请输入文件名(请以 .txt 完毕): "); scanf("%s",filename); if((fp=fopen(filename, "w"))==NULL) { printf("翻开文件失败.\n"); return; } fprintf(fp, "该班学生数和所修课程数分别为:%d,%d\n\n",R,MAXM); fprintf(fp, "该班所修的课程有:\n"); for(j=0;j<MAXM;j++) fprintf(fp, "课程%d:%s\n",1+j,c[j].subject); fprintf(fp, "下面是该班学生信息:\n\n"); for(i=0;i<R;i++) { fprintf(fp, "学号:%s XX:%s\n",s[i].num,s[i].name); for(j=0;j<MAXM;j++) { fprintf(fp, "%s:%5.2f\n",c[j].subject,s[k].score[j]); } fprintf(fp, "学生总成绩:%5.2f\n学生平均成绩:%5.2f\n\n",s[i].sum,s[i].avg); k++; } fclose(fp); printf("\n\n 保存成功\n\n\n\n"); fclose(fp); printf("保存完毕.\n"); } void end() //8.完毕 { system("cls"); system("color f4"); 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(" ◢███◤ ◥███◣??\n"); printf("\n"); printf(" ████?████? \n"); printf("\n"); printf("\n"); printf("\n"); printf("\n\n 谢谢您的使用。BYE!!!\n\n\n\n\n\n\n\n"); 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 f5"); 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.- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 学生 成绩管理系统 代码
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文