大作业—学生综合测评系统设计.doc_第1页
大作业—学生综合测评系统设计.doc_第2页
大作业—学生综合测评系统设计.doc_第3页
大作业—学生综合测评系统设计.doc_第4页
大作业—学生综合测评系统设计.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学生综合测评系统设计一、问题描述每个学生装的信息为:学号、姓名、语文、数学、外语三门单科成绩、考试平均成绩、考试名次、同学互评分、德育成绩、任课教师评分、综合测评总分、综合测评名次。考试平均成绩、学生互评分、德育成绩、任课教师评分分别占综合测评总分的60%,10%,10%,20%.二、功能描述试设计一程序,使之能提供以下功能:1. 系统以菜单方式工作2学生信息处理(1)输入学生信息:学号、姓名,按学号由小到大的顺序排列。(2)增加学生信息;(2)浏览学生信息;(3)按学号删除学生信息。输入一个学号,若存在该学号,则删除该学生信息;否则提示出错信息。(4)修改学生信息。输入一个学号,若存在该学号,则修改该学生信息;否则提示出错信息。3. 学生成绩数据处理(1) 按考试科目录入学生成绩并且按公式:考试成绩=(语文+数学+外语)/3计算考试成绩,并计算考试名次。(2) 学生测评数据输入并计算综合测评总分及名次。(3) 学生成绩数据管理:按学号修改、删除学生成绩数据(4) 学生成绩数据查询按学号查询学生成绩数据4. 学生综合信息输出输出每个学生的学号、姓名、三门课程程序、考试平均成绩、考试名次、同学互评分、德育成绩、任课教师评分、综合测评总分、综合测评名次。三、算法提示1.数据结构:如果使用已学习的知识可使用多个数组分别存放学生学号、姓名信息和学生成绩,数组下标相同者为同一学生信息。如果能自学结构体及结构体数组章节内容,则可以使用结构体数组存储学生信息和成绩信息。四、测试数据学生人数:N=5主函数#include#includeBoyson.h#include#define m 10struct student sm;void main()system(cls);int choice,n,k=0;while(1) printf(.学生综合测评系统.n);printf(.1.学生信息处理.n);printf(.2.学生成绩数据处理.n);printf(.3.学生综合成绩输出.n);printf(.0.结束程序的使用.n);printf(.学生综合测评系统.n);printf(请你选择一个你想进行服操作的choice=);scanf(%d,&choice);printf(n);if(choice=0)printf(程序使用已经结束n);break;else if(choice0&choice0&choice5)switch(choice)case 1:n=input(s);for(j=1;jn;j+)for(i=0;isi+1.number)temp=si;si=si+1;si+1=temp;printf(排序好的学生信息为:n);printf(学号t姓名n);for(i=0;in;i+)printf(%dt%sn,si.number,);break;case 2:n=insert(s,n);printf(插入后学生的信息如下所示:n);printf(学号t姓名n);for(i=0;i0&choice6)switch(choice)case 1:averag(s,n);break;case 2:ceping(s,n);break;case 3:n=score(s,n);printf(修改后学生的成绩如下所示:n);printf(语文t数学t外语t平均分t学生互评t德育成绩t任课教师评分t综合测评成绩n);for(i=0;in;i+)printf(%dt%dt%dt%ft%dt%dt%dt%fn,si.score0,si.score1,si.score2,si.average,si.score3,si.score4,si.score5,si.scort_last);break;case 4:n=shanchu(s,n);printf(删除后的成绩为下所示:n);printf(语文t数学t外语t平均分t学生互评t德育成绩t任课教师评分t综合测评成绩n);for(i=0;in;i+)printf(%dt%dt%dt%ft%dt%dt%dt%fn,si.score0,si.score1,si.score2,si.average,si.score3,si.score4,si.score5,si.scort_last);return n;break;case 5:i=research(s,n);printf(语文t数学t外语t平均分t学生互评t德育成绩t任课教师评分t综合测评成绩n);printf(%dt%dt%dt%ft%dt%dt%dt%fn,si.score0,si.score1,si.score2,si.average,si.score3,si.score4,si.score5,si.scort_last);break;printf(n);int input(struct student s)int i=0,j,n=0;struct student temp;printf(学号t姓名n);while(1)scanf(%d%s,&si.number,);if(si.number=0)break;n+;i+;return n;int insert(struct student s,int n)int i,k;struct student a1;printf(输入一个学生的信息n);printf(学号t姓名n);scanf(%d%s,&a0.number,);printf(n);for(i=0;in;i+)if(a0.number=k;i-)si+1=si;sk=a0;n+;return n; void del(struct student s,int n)int i,k;printf(请输入一个你想删除的学生成绩信息的学号:n);scanf(%d,&k);printf(n);for(i=0;in;i+)if(k=si.number)k=i;n-;for(i=k;in;i+)si=si+1;printf(删除后学生的信息如下所示:n);printf(学号t姓名n);for(i=0;isi.number)printf(所输入的这个学号不存在!n);void fix(struct student s,int n)int i,a;printf(输入要修改信息的学生的学号n);scanf(%d,&a);printf(n);for(i=0;in;i+)if(si.number=a)printf(输入一个新的学生信息!n);scanf(%d%s,&si.number,);printf(修改后学生的信息如下所示:n);printf(学号t姓名n);for(i=0;in;i+)printf(%dt%sn,si.number,); if(si.numbera) printf(所输入的这个学号不存在!n); int averag(struct student s,int n)struct student temp;int i=0,j;printf(语文t数学t外语n);for(i=0;in;i+)scanf(%d%d%d,&si.score0,&si.score1,&si.score2);printf(n);for(i=0;in;i+)si.average=(si.score0+si.score1+si.score2)/3.0;for(j=1;jn;j+)for(i=0;in-j;i+)if(si.averagesi+1.average)temp=si;si=si+1;si+1=temp;for(i=0;in;i+)si.rank1=i+1;for(i=0;in;i+)if(si.average=si+1.average)si+1.rank1=si.rank1;printf(语文t数学t外语t平均分t考试名次n);for(i=0;in;i+)printf(%dt%dt%dt%ft%dn,si.score0,si.score1,si.score2,si.average,si.rank1);return n;int ceping(struct student s,int n)struct student temp;int i=0,j,k=0;printf(学生互评t德育成绩t任课教师评分n);for(i=0;in;i+)scanf(%d%d%d,&si.score3,&si.score4,&si.score5);for(i=0;in;i+)si.scort_last=si.average*(0.6)+si.score3*(0.1)+si.score4*(0.1)+si.score5*(0.2);for(j=1;jn;j+)for(i=0;in-j;i+)if(si.scort_lastsi+1.scort_last)temp=si;si=si+1;si+1=temp;for(i=0;in;i+)si.rank2=i+1;for(i=0;in;i+)if(si.scort_last=si+1.scort_last)si+1.rank2=si.rank2;printf(学生平均成绩 学生互评 德育成绩 任课教师评分 综合得分 综合名次n);for(i=0;in;i+)printf(%ft%dt%dt%dtt%ft%dn,si.average,si.score3,si.score4,si.score5,si.scort_last,si.rank2);return n;int score(struct student s,int n)int i,k;printf(请输入一个你想修改的学生成绩信息的学号:n);scanf(%d,&k);printf(n);for(i=0;in;i+)if(k=si.number)printf(语文t数学t外语n);scanf(%d%d%d,&si.score0,&si.score1,&si.score2);si.average=(si.score0+si.score1+si.score2)/3.0;si.scort_last=si.average*(0.6)+si.score3*(0.1)+si.score4*(0.1)+si.score5*(0.2);printf(n);return n;int shanchu(struct student s,int n)int i,k;printf(请输入一个你想删除的学生成绩信息的学号:n);scanf(%d,&k);printf(n);for(i=0;in;i+)if(k=si.number)for(i=i;in;i+)si=si+1;n-;return n;printf(没有这个学生的信息n);int research(struct student s,int n)system(cls);int i,a;printf(请输入需要查找的学生学号n);scanf(%d,&a);printf(n);for(i=0;in;i+)if(a=si.number)return i;void cjsc(struct student s,int n)system(cls);int i;printf(学生综合成绩如下所示:n);printf(学号 姓名 语文 数学 外语 平均分 考试名次 学生互评 德育 教师评分 综合得分 名次n);for(i=0;in;i+)printf(%d%6s%5d%5d%5d%9.2f%5d%9d%6d%9d%9.2f%9dn,si.number,,si.score0,si.score1,si.score2,si.average,si.rank1,si.score3,si.score4,si.score5,si.scort_last,si.rank2);头文件struct student int rank1;int rank2;int number;char name20;int score6;float average;int sort;float scort_last;int sdxxcl();int sdcjcl(int n);void cjsc(struct student s,int n);int input(struct student s);int inse

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论