题目:学生综合信息测评系统
程序要求
每个学生的信息为:学号、姓名、性别、家庭住址、联系电话、语文、数学、外语三门单科成绩、考试平均成绩、考试名次、同学互评分、品德成绩、任课教师评分、综合测评总分、综合测评名次。考试平均成绩、同学互评分、品德成绩、任课教师评分分别占综合测评总分的60%,10%,10%,20%。
A、学生信息处理
(1) 输入学生信息、学号、姓名、性别、家庭住址、联系电话,按学号以小到大的顺序存入文件中。
(2) 插入(修改)同学信息:
(3) 删除同学信息:
(4) 浏览学生信息:
B、学生数据处理:
(1) 按考试科目录入学生成绩并且按公式:
考试成绩=(语文+数学+外语)/3 计算考试成绩,并计算考试名次,提示:先把学生信息读入数组,然后按提示输入每科成绩,计算考试成绩,求出名次,最后把学生记录写入一个文件中。
(2) 学生测评数据输入并计算综合测评总分及名次。
综合测评总分=(考试成绩)*0.6+(同学互评分)*0.1+品德成绩*0.1+任课老师评分*0.2。
(3) 学生数据管理
输入学号,读出并显示该同学信息,输入新数据,将改后信息写入文件
(4) 学生数据查询:
输入学号或其他信息,即读出所有数据信息,并显示出来。
博主VX:15813406574,永久在线,承接JAVA、CC++、python、matlab等课程设计 博主VX:15813406574,永久在线,承接JAVA、CC++、python、matlab等课程设计 博主VX:15813406574,永久在线,承接JAVA、CC++、python、matlab等课程设计
接下来就是效果图展示:
核心代码展示(由于篇幅限制这里就只展示部分代码,如果需要全部代码的可以私聊)
void data_xiugai() //数据修改 { int pp; int i,j,k; data_daoru(); printf(" 请输入要修改学生的学号:"); scanf("%d",&pp); printf(" "); for(i=0;i<=count;i++){ if(data[i].number==pp) break; } if(i>=count) { printf(" 没有找到该学生! "); return;} printf(" 学号:%.0d 姓名:%s 语文:%d 数学:%d 英语:%d 品德成绩:%d 老师评分:%d ",data[i].number,info[i].name,data[i].chinese,data[i].math,data[i].english,data[i].pinde,data[i].teacher); printf(" 是否修改? 1.是 2.否 "); while(1){ //询问 scanf("%d",&j); switch(j){ case 1:{ for(k=0;k<=count;k++){ //重新排名次 if(data[i].avg>data[k].avg) data[k].ksmc=data[k].ksmc-1; } printf(" 请输入语文成绩:"); scanf("%d",&data[i].chinese); while( data[i].chinese < 0 || data[i].chinese > 100 ) { printf(" 对不起你输入的数据不是 1-100 之间,请从新输入真确的数值! "); printf(" 请输入老师评分:"); scanf("%d",&data[i].chinese ); } printf(" 请输入数学成绩:"); scanf("%d",&data[i].math); while( data[i].math < 0 || data[i].math > 100 ) { printf(" 对不起你输入的数据不是 1-100 之间,请从新输入真确的数值! "); printf(" 请输入数学成绩:"); scanf("%d",&data[i].math); } printf(" 请输入英语成绩:"); scanf("%d",&data[i].english); while( data[i].english < 0 || data[i].english > 100 ) { printf(" 对不起你输入的数据不是 1-100 之间,请从新输入真确的数值! "); printf(" 请输入英语成绩:"); scanf("%d",&data[i].english); } printf(" 请输入同学互评成绩:"); scanf("%d",&data[i].huping ); while( data[i].huping < 0 || data[i].huping > 100 ) { printf(" 对不起你输入的数据不是 1-100 之间,请从新输入真确的数值! "); printf(" 请输入同学互评成绩:"); scanf("%d",&data[i].huping ); } printf(" 请输入品德成绩:"); scanf("%d",&data[i].pinde); while( data[i].pinde < 0 || data[i].pinde > 100 ) { printf(" 对不起你输入的数据不是 1-100 之间,请从新输入真确的数值! "); printf(" 请输入品德成绩:"); scanf("%d",&data[i].pinde); } printf(" 请输入老师评分:"); scanf("%d",&data[i].teacher); while( data[i].teacher < 0 || data[i].teacher > 100 ) { printf(" 对不起你输入的数据不是 1-100 之间,请从新输入真确的数值! "); printf(" 请输入老师评分:"); scanf("%d",&data[i].teacher); } data[i].avg=(data[i].chinese+data[i].math+data[i].english)/3.0; data[i].ceping=(data[i].avg*0.6+data[i].huping *0.1+ data[i].pinde*0.1+data[i].teacher*0.2); data[i].ksmc=count; for(k=0;k<count;k++){ //重新排名次 if(data[i].avg>data[k].avg){ data[k].ksmc=data[k].ksmc+1; if(data[i].ksmc>data[k].ksmc-1) data[i].ksmc=data[k].ksmc-1; } } printf(" 修改成功! "); data_xieru(); return; //写入文件 } case 2: return; default : printf("输入错误!请重新输入!");break; } break; } printf(" "); system("pause"); }