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

    c语言学生成绩管理系统实训报告(共13页).doc

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

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

    c语言学生成绩管理系统实训报告(共13页).doc

    精选优质文档-倾情为你奉上郑州轻工业学院实 训 报 告实训名称: C语言程序设计实训 姓 名: 徐博 院 (系): 软件学院 专业班级: 网页设计02 学 号: 0 指导教师: 成 绩: 时间: 2015年 1月 5 日至 2015年 1 月9日一 设计项目:学生成绩管理系统二 总体设计:1 程序设计组成框图:学生成绩管理系统输入学生成绩查看学生成绩及成绩排序通过学号查询学生成绩统计成绩信息通过学号修改学生成绩添加学生成绩通过学号删除学生成绩保存学生成绩退出程序2:模块功能说明:1 输入功能:输入学生姓名学号及成绩。2 查看功能:输出姓名学号及各科成绩。3 查询功能:通过学号查询学生姓名及各科成绩。 4 统计功能:统计班级学生及格率,优秀率,各个学生成绩方差等。5 修改功能:通过输入学号修改指定学生的错误信息。6添加功能:添加学生信息。7删除功能:通过输入学号输入指定学生信息。8保存功能:将学生信息保存。9 退出系统。 3:主要函数之间的调用关系及各自功能:主要函数的函数原型void inputscore(void);void savescore(void);void avergescore(void);void modifyscore(void);void lookscore(void);void searchscore(void);void statistic(void);void add(void);void modify(void);void delscore(void);void menu(void);i. 在菜单界面输入1,调用函数inputscore( )实现输入学生成绩信息功能。ii. 在菜单界面2,调用函数lookscore( )实现学生成绩按平均分高低排序输。出,同时lookscore()函数调用avergescore()函数实现各个学生平均分的计算。iii. 在菜单界面输入3,调用searchscore()函数实现通过学号查找学生成绩信息功能。iv. 在菜单界面输入4,调用statistic()函数输出班级及格率,优秀率,学生成绩方差,不及格学生名单。v. 在菜单界面输入5,调用modify()函数实现通过学号修改学生成绩的功能vi. 在菜单界面输入6,调用add()函数实现添加学生成绩。vii. 在菜单界面输入7,调用delscore()函数实现删除指定学生成绩。viii. 在菜单界面输入8,调用savescore()函数将学生成绩信息保存。ix. 在菜单界面输入9,退出成绩管理系统。开始输入指令19输入成绩查询成绩成绩统计修改成绩添加成绩删除成绩保存成绩显示成绩123456789退出三 程序运行效果截图1 主菜单2 输入成绩3 查看成绩4 查询成绩5统计成绩6修改成绩7 添加成绩8 删除成绩9保存成绩四 个人总结整个程序主要运用了课本上的基础知识,并未有太大创新,通过for循环,循环输入学生成绩。在学生成绩排序中运用选择法,同时实现学生名次的确定。在删除指定学生成绩时,先确定信息存储位置即其在结构体数组中的序号,通过结构体变量的整体赋值将从指定位置以后的学生信息赋给前一个结构体变量,并将学生总数n减1,实现删除学生成绩信息。源代码#include<stdio.h>#include<string.h>#include<process.h>#include<conio.h>#define N 30#define M 3typedef struct studentchar number10;char name20;float scoreM;float aver;STU;STU stuN;int n;void inputscore(void);void savescore(void);void avergescore(void);void modifyscore(void);void lookscore(void);void searchscore(void);void statistic(void);void add(void);void modify(void);void delscore(void);void menu(void);void main()short int flag=0;menu();doflag=1;switch(getch()case '1' : inputscore();break; /*输入成绩*/case '2' : lookscore();break;/*查看成绩*/case '3' : searchscore();break;/*查找成绩*/case '4' : statistic();break;/*成绩统计*/case '5' : modify();break;/*修改成绩*/case '6' : add();break;/*添加成绩*/case '7' : delscore();break;/*删除成绩*/case '8' : savescore();break;/*保存成绩*/case '9' :exit(0);/*退出程序*/default : printf("输入有误n");printf("按任意键继续n");getch();menu();while (flag=1);void menu(void)system("cls");printf("n");printf("*欢迎进入学生成绩管理系统*n");printf(" 菜单 n");printf("输入成绩-1n");printf("查看成绩及成绩排序-2n");printf("查询学生成绩-3n");printf("成绩统计-4n");printf("修改成绩-5n");printf("添加成绩-6n");printf("删除成绩-7n");printf("保存成绩-8n");printf("退出系统-9n");printf("*n");printf("请输入您的选择n");/*输入各个同学的学生信息*/void inputscore(void)int i,j;system("cls");printf("请输入学生总数:n");scanf("%d",&n);printf("提示:*输入学号时请输入位数为8位的数字*n");/*因二维表上下需对正故有此要求*/for(i=0;i<n;i+)printf("请输入学生%d的学号 姓名:n",i+1);scanf("%s%s",stui.number,stui.name);printf("请输入学生成绩:n");printf("数学t英语t计算机n");for(j=0;j<M;j+)scanf("%f",&stui.scorej);printf("成功输入n");/*计算各个同学的平均分*/void avergescore(void)int i,j;for(i=0;i<n;i+)stui.aver=0;for(j=0;j<M;j+)stui.aver+=stui.scorej;stui.aver=stui.aver/M;/*查看学生成绩及根据平均分对学生进行排序*/void lookscore(void)int i,j,k;STU t;avergescore();system("cls");for(i=0;i<n-1;i+)for(k=i,j=i+1;j<n;j+)if(stuj.aver>stuk.aver)k=j;if(k!=j)t=stuk;stuk=stui;stui=t;printf("名次t学号tt姓名t数学t英语t计算机t平均分n");for(i=0;i<n;i+)printf("%dt%st%st",i+1,stui.number,stui.name);for(j=0;j<M;j+)printf("%4.2ft",stui.scorej);printf("%4.2f",stui.aver);printf("n");/*通过输入学号查找学生成绩*/void searchscore(void)char a10;int i,j;system("cls");printf("请输入需查询的学生学号n");scanf("%s",a);for(i=0;i<n;i+)if(strcmp(a,stui.number)=0)printf("名次t学号tt姓名t数学t英语t计算机t平均分n");printf("%dt%st%st",i+1,stui.number,stui.name);for(j=0;j<M;j+)printf("%4.2ft",stui.scorej);printf("%4.2f",stui.aver);printf("n");break;/*找到该学生成绩信息后跳出for循环*/elseprintf("未找到该学生信息n");/*统计学生成绩信息,平均分及格率,优秀率,成绩方差*/void statistic(void)STU *p=stu;int i,j;float count=0.0,sum=0.0;system("cls");for(i=0;i<n;i+)sum+=(p+i)->aver;printf("该班级平均分为%4.2fn",sum/n);/*平均分计算*/for(i=0;i<n;i+)if(p+i)->aver>=60)count+;printf("该班级及格率为%4.2f%n",count/n*100);/*及格率计算*/count=0.0;for(i=0;i<n;i+)if(p+i)->aver>=90)count+;printf("该班级优秀率为%4.2f%n",count/n*100);/*优秀率计算*/for(i=0;i<n;i+)for(j=0;j<M;j+)sum=(p+i)->scorej-(p+i)->aver)*(p+i)->scorej-(p+i)->aver);sum=sum/n;printf("学生%s的成绩方差为%4.2fn",(p+i)->name,sum);/*方差计算*/printf("平均分低于60的学生名单n");for(i=0;i<n;i+)if(stui.aver<60)printf("%sn",stui.name);/*统计不及格学生名单*/*修改学生成绩*/void modify(void)char a10;int i,j;system("cls");printf("请输入需要修改成绩的学生学号n");scanf("%s",a);for(i=0;i<n;i+)if(strcmp(a,stui.number)=0)printf("名次t学号tt姓名t数学t英语t计算机t平均分n");printf("%dt%st%st",i+1,stui.number,stui.name);for(j=0;j<M;j+)printf("%4.2ft",stui.scorej);printf("%4.2f",stui.aver);printf("n");printf("请重新输入该学生的学号 姓名:n");scanf("%s%s",stui.number,stui.name);printf("请重新输入学生成绩:n");printf("数学t英语t计算机n");for(j=0;j<M;j+)scanf("%f",&stui.scorej);/*找到该学生成绩后进行修改,跳出for循环*/printf("修改成功n");break;elseprintf("未找到该学生信息n");/*添加学生成绩*/void add(void)int a,i,j;system("cls");printf("请输入新增加的学生人数:n");scanf("%d",&a);n=n+a;for(i=n-a;i<n;i+)printf("请输入学生%d的学号 姓名:n",i+1);scanf("%s%s",stui.number,stui.name);printf("请输入学生成绩:n");printf("数学t英语t计算机n");for(j=0;j<M;j+)scanf("%f",&stui.scorej);printf("添加成功n");/*删除学生成绩*/void delscore(void)int i,j,c;char m,a10;system("cls");printf("请输入学生学号n");scanf("%s",a);for(i=0;i<n;i+)if(strcmp(a,stui.number)=0)printf("名次t学号tt姓名t数学t英语t计算机t平均分n");printf("%dt%st%st",i+1,stui.number,stui.name);for(j=0;j<M;j+)printf("%4.2ft",stui.scorej);printf("%4.2f",stui.aver);printf("n");c=i;break;elseprintf("未找到该学生信息n");printf("是否删除该学生成绩(y/n)n");scanf("%s",&m);if(m='y')for(i=c;i<n-1;i+)stui=stui+1;/*结构体整体赋值将后一位学生成绩信息拷贝进入前一位学生信息的存储位置*/n=n-1;/*删除该学生信息后学生总数减一*/printf("删除成绩成功n");elseprintf("删除成绩失败n");/*保存学生成绩*/void savescore(void)FILE *fp;int i,flag=1;char m;system("cls");puts("是否保存学生成绩(y/n)");scanf("%s",&m);if(m='y')if(fp=fopen("score.dat","wb")=NULL)printf("文件打开失败n");return;for(i=0;i<n;i+)if(fwrite(&stui,sizeof(struct student),1,fp)!=1)printf("保存失败n");flag=0;if(flag=1)printf("保存成功!n");fclose(fp);elsereturn;专心-专注-专业

    注意事项

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

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




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

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

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

    收起
    展开