欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C语言程序报告学生学籍信息管理系统.docx

    • 资源ID:92347067       资源大小:140.31KB        全文页数:22页
    • 资源格式: DOCX        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C语言程序报告学生学籍信息管理系统.docx

    C语 言 课 程 设 计院系:工程学院&姓名:刘假设愚学号:606班号:05205235指导教师:王教师日期:2023 年 9 月:C 语言程序设计报告第一局部 题目要求程序设计题目:学生学籍信息治理系统设计【要求】使用下面的数据,设计一个简洁的学籍信息治理系统。学生根本信息文件及其内容:学号姓名性别宿舍号码 号码01张成成男50102李成华女10103王成凤女10104张明明男502>05陈东男50106李果男50207张园园女102.学生成绩根本信息文件及其内容:学号课程编号课程名称 学分寻常成绩试验成绩 卷面成绩01A01大学物理 366788202B03高等数学 478-19001B03高等数学 445-18802C01VF3657666.功能要求及说明:数据录入功能:录入每个学生的学号、课程编号、课程名称、学分、寻常成绩、试验成绩、卷面成绩共7 个数据。综合成绩、实得分依据条件自动运算。综合成绩的计算:假设本课程的试验成绩为-1,则表示无试验,综合成绩=寻常成绩*30%+卷面成绩*70%;假设试验成绩不为 -1,表示本课程有试验,综合成绩 =寻常成绩*15%+试验成绩*15%+卷面成绩*70%。实得学分的计算:承受等级学分制。综合成绩在 90-100 之间,应得学分=学分*100%;综合成绩在 80-90 之间,应得学分=-学分*80%;综合成绩在 70-80 之间,应得学分=学分*75%;综合成绩在 60-70 之间,应得学分=学分*60%;综合成绩在 60 以下,应得学分=学分*0%。2查询功能;分为学生根本状况查询和成绩查询两种1学生根本状况查询:;输出。并显示输出。输入一个学生的学号活姓名,查出此生的根本信息并显示输入一个宿舍号码,可查询出本室全部的学生的根本信息成绩查询:输入一个学号时,查询出此生的全部课程状况,格式如下: 学号:姓名;课程编号:课程名称:综合成绩:实得学分: 课程编号:课程名称:综合成绩:实得学分: 课程编号;课程名称:综合成绩:实得学分:.共修:XX 科, 实得总学分为:XXX删除功能:当在中删除一个学生时,自动地在中删除此人全部的信息排序功能:能实现选择按综合成绩或实得学分升序或降序排序并显示数据。其次局部 需求分析|依据题目要求,由于学生信息是存放在文件中,所以应当供给文件的输入、输出等操作;在程序中要扫瞄学生的信息,应供给显示、查找、排序等操作;另外还应当供给键盘式选择菜单实现功能选择。第三局部 总体设计依据上面的需求分析,可以将这个系统的设计分为以下几个模块:学生成绩治理系统数据显示数据查找数据插入成绩排序】数据输入第四局部 具体设计主函数主函数设计一般要简洁,只供给输入,处理和输出局部的函数调用。其中各功能模块用菜单方式选择。【流程图】显示一系列功能选项输入 n,推断 n 是否是 0-7Y依据 n 的值调用各功能模块函数N”程序#include<> void menuint n,w;doputs(“tt*MENU*nn“); puts(“t“);puts(“t“);;puts(“t “);puts(“nntt*n“); printf(“Choice your number(1-7): bbbb“); scanf(“%d“,&n);if(n<1|n>7)/对选择的数字作推断/w=1;getchar; else w=0;while (w=1);switch(n)case 1: browse;break;/扫瞄模块/case 2: enter;break;/输入模块/case 3: search;break;/查找模块/case 4: browse2;break;/扫瞄模块/case 5: enter2;break;/输入模块/ case 6: search2;break;/查找模块/case 7: exit(0);break;/退出/mainmenu;2各功能模块设计输入模块:先承受构造体数组存储数据”struct a int xuehao; char name15; char sex10; int shushenum; int telenum;a10;struct bint xuehao;int kechenghao;char kechengming15; int xuefen;int pingshichengji; int shiyanchengji; int juanmianchengji;iyanchengji*;int zonghechengji; int shidechengji;b10;a10.b10 中每个数组元素对应一个学生void jisuanint i, n,n1, n2, n3,n4; for(i=0;i<10;i+)if (bi.shiyanchengji=-1)bi.zonghechengji=bi.pingshichengji*+bi.juanmianchengji*; break;if (bi.shiyanchengji!=-1)bi.zonghechengji=bi.pingshichengji*+bi.juanmianchengji*+bi.shbreak; if(bi.zonghechengji>90&&bi.zonghechengji<100 )n4=bi.xuefen;“bi.shidechengji=(n4)*(1); break;else if (bi.zonghechengji>80&&bi.zonghechengji<90) n3=bi.xuefen; bi.shidechengji=(n3)*; break;else if(bi.zonghechengji>70&&bi.zonghechengji<80)* n2=bi.xuefen; bi.shidechengji=(n2)*;break;else if(bi.zonghechengji>60&bi.zonghechengji<70)n1=bi.xuefen; bi.shidechengji=(n1)*; break;else if (bi.zonghechengji<60)n=bi.xuefen; bi.shidechengji=n*0;break;此简洁程序计算综合成绩与实得学分、【程序】enter int i,n;printf(“How many chengjijibenxinxi datas(0-%d):“,10); scanf(“%d“,&n);printf(“n Enter data now nn“); for(i=0;i<n;i+)printf(“nInput %dth chengjijibenxinxi record.n“,i+1);<input(i);调用输入函数if(i!=0) save(n);调用保存函数printf_back;一个任务完毕时让用户选择是扫瞄还是返回扫瞄模块:【流程图】【显示学生记录该模块的功能是显示全部学生记录信息。按任意键显示下一屏按任意键返回主菜单/屏显示【程序】browse扫瞄全部模块 int i,j,n;n=load;加载记录printf_face;调用显示数据构造工程函数for(i=0;i<n;i+) if(i%10=0) printf(“nnPass any key to contiune.“);目的是分getch;puts(“nn“);printf_one(i); printf(“n“);调用显示一个记录的函数printf(“tThere are%d record.n“,n); printf(“nPass any key to back.“);getch;按任意键menu;$browse2该扫瞄模块的功能是显示全部学生的成绩根本信息 int i,j,n; n=load2; printf_face2; for(i=0;i<n;i+) if(i%10=0) printf(“nnPass any key to contiune.“); getch;puts(“nn“);printf_one2(i);,printf(“n“);printf(“tThere are%d record.n“,n); printf(“nPass any key to back.“);getch;menu;查找模块;该模块的功能是依据输入的学生姓名查找对应的记录,找到以后,增加删除功能。【流程图】输入学生的名字是否找到此生记录Y&N显示找到的记录提示没有找到询问用户是否连续查找YN让用户选择 1。查找另一个2。修改 3).删除4返回主菜单返回主菜单;【程序】search查找学生根本信息的模块 int i,n,k,w1=1,w2,w3,w4; struct a s;n=load; dodo>k=-1;printf(“nnEnternumberthatyouwanttosearch!number“);scanf(“%d“,& 输入要修改的数据的学号printf_face;调用显示数据构造工程函数for(i=0;i<n;i+)查找要修改的数据if=ai.xuehao)k=i;printf_one(k);break;调用显示一个记录的函数if(k=-1);“);printf(“nnNo exist!please“);printf(“nnAre you againnt 1).Again 2)No and back bbbscanf(“%d“,&w1);保证在第一次找的的根底上再查找找不到时能退出while(k=-1&&w1=1);假设 W1 不等于 1 时直返回search2查找学生成绩根本信息的模块 int i,n,k,w1=1,w2,w3,w4; struct a s;n=load2;number“);dodok=-1;printf(“nnEnternumberthatyouwanttosearch!scanf(“%d“,& printf_face2; for(i=0;i<n;i+) if=ai.xuehao)“);k=i;printf_one2(k);break; if(k=-1)printf(“nnNo exist!please“);printf(“nnAre you againnt 1).Again 2)No and back bbbscanf(“%d“,&w1);while(k=-1&&w1=1);删除模块:该模块的功能是先显示全部学生的信息,考虑到记录的数据较多,建议承受分屏显示【程序】Void del排序模块:该功能模块的功能是要求将学生记录的综合成绩或实得分升序或降序排序并显示数据。假设这里承受选择法排序。【流程图】“用选择法排序保存返回主菜单【程序】Void order排序模块int I,j,n;Struct student s;n=load; For(i=0;i<n-1;i+),Save(n);Puts(“nn”);Printf_back;设计出的程序如下>#include<> void menuint n,w;doputs(“tt*MENU*nn“); puts(“t“);puts(“t“);puts(“t“); puts(“nntt*n“);printf(“Choice your number(1-7): bbbb“); scanf(“%d“,&n);if(n<1|n>7)w=1;getchar;else w=0; while (w=1); switch(n)%case 1: browse;break;case 2: enter;break;case 3: search;break;case 4: browse2;break;case 5: enter2;break;case 6: search2;break;case 7: exit(0);break;|mainmenu; struct a int xuehao; char name15; char sex10; int shushenum; int telenum;;a10;struct bint xuehao;int kechenghao;char kechengming15; int xuefen;int pingshichengji;int shiyanchengji; int juanmianchengji; int zonghechengji; int shidechengji;b10;void jisuanint i, n,n1, n2, n3,n4; for(i=0;i<10;i+),if (bi.shiyanchengji=-1)bi.zonghechengji=bi.pingshichengji*+bi.juanmianchengji*; break;iyanchengji*;if (bi.shiyanchengji!=-1)bi.zonghechengji=bi.pingshichengji*+bi.juanmianchengji*+bi.shbreak; if(bi.zonghechengji>90&&bi.zonghechengji<100 )n4=bi.xuefen;、bi.shidechengji=(n4)*(1);break;else if (bi.zonghechengji>80&&bi.zonghechengji<90) n3=bi.xuefen; bi.shidechengji=(n3)*; break;else if(bi.zonghechengji>70&&bi.zonghechengji<80) n2=bi.xuefen; bi.shidechengji=(n2)*;break;else if(bi.zonghechengji>60&bi.zonghechengji<70)n1=bi.xuefen; bi.shidechengji=(n1)*; break;。else if (bi.zonghechengji<60)n=bi.xuefen; bi.shidechengji=n*0;break;enter int i,n;,printf(“How many chengjijibenxinxi datas(0-%d):“,10);scanf(“%d“,&n);printf(“n Enter data now nn“); for(i=0;i<n;i+)printf(“nInput %dth chengjijibenxinxi record.n“,i+1); input(i);if(i!=0) save(n); printf_back;¥browse int i,j,n;n=load; printf_face; for(i=0;i<n;i+) if(i%10=0) printf(“nnPass any key to contiune.“); getch;puts(“nn“);printf_one(i); printf(“n“);printf(“tThere are%d record.n“,n); printf(“nPass any key to back.“);getch;menu;search int i,n,k,w1=1,w2,w3,w4; struct a s;n=load; donumber“);dok=-1;printf(“nnEnternumberthatyouwanttosearch!(“);|scanf(“%d“,& printf_face; for(i=0;i<n;i+) if=ai.xuehao)k=i;printf_one(k);break; if(k=-1)printf(“nnNo exist!please“);printf(“nnAre you againnt 1).Again 2)No and back bbbscanf(“%d“,&w1);while(k=-1&&w1=1); w4=0;w3=0;if(k!=-1)printf(“nnWhat doyou want todontanothermenu bbb“);scanf(“%d“,&w2); switch(w2)bbb“);:case 2:w3=modify(k);break;case 3: printf(“nAre you surent 1).sure2).No and back scanf(“%d“,&w4); if(w4=1)bk.xuehao=0;bk.kechenghao=0;strcpy(bk.kechengming,“xxxx“);bk.xuefen=0;bk.pingshichengji=0;bk.shiyanchengji=0;bk.juanmianchengji=0;bk.zonghechengji=0;bk.shidechengji=0;ai.xuehao=0;strcpy(ai.name,“xxxx“);strc py(ai.sex,“xxxx“);ai.shushenum=0;ai.telenum=0;break;if(w3=1|w4=1);2).Back bbb“);save(n); printf(“nnSuccessful.“);printf(“nnWhatdoyouwanttodont1).Searchanotherscanf(“%d“,&w2);while(w2=1); menu;¥input (int i) scanf(“%d%d%s%d%d%d%d%d%d“,&bi.xuehao,&bi.kechenghao,bi.kechengmin g,&bi.xuefen,&bi.pingshichengji,&bi.shiyanchengji,&bi.juanmianchengji);jisuan;save(int n) FILE *fp; int i;if(fp=fopen(“,“wb“)=NULL)/ printf(“nCannot open filen“); return NULL;for(i=0;i<n;i+) if(ai.xuehao!=0)if(fwrite(&bi,sizeof(struct b),1,fp)!=1) printf(“file write errorn“);fclose(fp);load FILE *fp; int i;if(fp=fopen(“,“rb“)=NULL)printf(“nCannot open filen“); return NULL;for(i=0;!feof(fp);i+) fread(&bi,sizeof(struct b),1,fp);【fclose(fp); return(i-1);printf_faceprintf(“ntxuehaokechenghaokechengmingxuefen pingshichengji shiyanchengji juanmianchengji zonghechengji shidechengji “); printf_one(int i)printf(“%5d%5d%15s%5d%5d%5d%5d%5d%5d“,bi.xuehao,bi.kechenghao,bi.kec hengming,bi.xuefen,bi.pingshichengji,bi.shiyanchengji,&bi.juanmianchengji,bi.zonghechengji,bi.shidechengji);bbb“);printf_back int k,w; printf(“nntSuccessful.nn“);printf(“What do you want to donnt 1).Browse all now 2).Back; scanf(“%d“,&w); if(w=1) browse;else menu;modify(int i)int c,w1=2;do puts(“nmodify by=>nn“);puts(“1).xuehao2).kechenghao3).kechengming4).xuefen5).pingshichengji6).shiyanchengji7).juanmianchengji8)zonghechengji 9)shidechengji 10).all data 11).cancel and back “);printf(“Which you needed: bbbb“); scanf(“%d“,&c);if(c>11|c<1)puts(“nChoice error!Please again!“); getchar;while(c>11|c<1); do switch(c)case 1:printf(“xuehao:“);scanf(“%d“,&bi.xuehao);break;case 2:printf(“kechenghao:“);scanf(“%d“,&bi.kechenghao);break; case3:printf(“kechengming:“);scanf(“%s“,bi.kechengming);break;case 4:printf(“xuefen:“);scanf(“%d“,&bi.xuefen);break; case5:printf(“pingshichengji:“);scanf(“%d“,&bi.pingshichengji);break; case6:printf(“shiyanchengji:“);scanf(“%d“,&bi.shiyanchengji);break; case7:printf(“juanmianchengji:“);scanf(“%d“,&bi.juanmianchengji);break; case 8:input(i);break;case 9:menu;break; puts(“nNow:n“); printf_face;printf_one(i);printf(“nAre you surennt 1).Sure 2).No and remodify 3).Backwithout save in this time bbb“);scanf(“%d“,&w1); while(w1=2); return(w1);enter2 int i,n;】printf(“How many xue sheng ji ben xin xi(0-%d):“,10);scanf(“%d“,&n);printf(“n Enter data now nn“); for(i=0;i<n;i+)printf(“nInput %dth xue sheng ji ben xin xi record.n“,i+1); input2(i);if(i!=0) save2(n); printf_back2;browse2 int i,j,n;n=load2; printf_face2; for(i=0;i<n;i+) if(i%10=0) printf(“nnPass any key to contiune.“); getch;puts(“nn“);printf_one2(i); printf(“n“);printf(“tThere are%d record.n“,n); printf(“nPass any key to back.“);getch;menu;$search2 int i,n,k,w1=1,w2,w3,w4; struct a s;n=load2; donumber“);dok=-1;printf(“nnEnternumberthatyouwanttosearch!“);scanf(“%d“,& printf_face2; for(i=0;i<n;i+) if=ai.xuehao)k=i;printf_one2(k);break; if(k=-1)printf(“nnNo exist!please“);printf(“nnAre you againnt 1).Again 2)No and back bbbscanf(“%d“,&w1);while(k=-1&&w1=1); w4=0;w3=0;if(k!=-1)printf(“nnWhat doyou want todontanothermenu bbb“);scanf(“%d“,&w2); switch(w2)case 2:w3=modify2(k);break;2).Back bbb“);if(w3=1|w4=1)save2(n); printf(“nnSuccessful.“);printf(“nnWhatdoyouwanttodont1).Searchanotherscanf(“%d“,&w2);while(w2=1); menu;#input2 (int i) scanf(“%d %s %s %d %d“,&ai.xuehao,ai.name,ai.sex,&ai.shushenum,ai.telen um);save2(int n) FILE *fp; int i;if(fp=fopen(“,“wb“)=NULL)< printf(“nCannot open filen“); return NULL;for(i=0;i<n;i+) if(ai.xuehao!=0)if(fwrite(&ai,sizeof(struct a),1,fp)!=1) printf(“file write errorn“);fclose(fp);load2 FILE *fp; int i;if(fp=fopen(“,“rb“)=NULL)printf(“nCannot open filen“); return NULL;for(i=0;!feof(fp);i+) fread(&ai,sizeof(struct a),1,fp); fclose(fp);return(i-1);printf_face2 printf(“nt xue sheng ji ben xin xi n“); printf_one2(int i)printf(“%d%s%s%d%d“,ai.xuehao,ai.name,ai.sex,ai.shushenum,ai.telenum);printf_back2 int k,w; printf(“nntSuccessful.nn“);printf(“What do you want to donnt 1).Browse all now 2).Back; bbb“);scanf(“%d“,&w); if(w=1) browse2; else menu;modify2(int i)int c,w1=2;do puts(“nmodify by=>nn“);puts(“ 1).xuehao 2).name 3).sex4).shushenum5)telenum 6).alldata 7).cancel and back “);printf(“Which you needed: bbb“); scanf(“%d“,&c);if(c>7|c<1)puts(“nChoice error!Please again!“); getchar;while(c>7|c<1); do switch(c)case 1:printf(“xuehao:“);scanf(“%d“,&ai.xuehao);break;case 2:printf(“name:“);scanf(“%s“,ai.name);break;case 3:printf(“sex:“);scanf(“%s“,ai.sex);break;case 4:printf(“shushenum:“);scanf(“%d“,&ai.shushenum);break; case 5:printf(“telenum:“);scanf(“%d“,&ai.telenum);break;case 6:input(i);break; case 7:menu;break; puts(“nNow:n“); printf_face2; printf_

    注意事项

    本文(C语言程序报告学生学籍信息管理系统.docx)为本站会员(1564****060)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

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

    收起
    展开