大作业学生综合测评系统设计.docx
- 文档编号:9970711
- 上传时间:2023-02-07
- 格式:DOCX
- 页数:16
- 大小:17.02KB
大作业学生综合测评系统设计.docx
《大作业学生综合测评系统设计.docx》由会员分享,可在线阅读,更多相关《大作业学生综合测评系统设计.docx(16页珍藏版)》请在冰豆网上搜索。
大作业学生综合测评系统设计
学生综合测评系统设计
一、问题描述
每个学生装的信息为:
学号、姓名、语文、数学、外语三门单科成绩、考试平均成绩、考试名次、同学互评分、德育成绩、任课教师评分、综合测评总分、综合测评名次。
考试平均成绩、学生互评分、德育成绩、任课教师评分分别占综合测评总分的60%,10%,10%,20%.
二、功能描述
试设计一程序,使之能提供以下功能:
1.系统以菜单方式工作
2.学生信息处理
(1)输入学生信息:
学号、姓名,按学号由小到大的顺序排列。
(2)增加学生信息;
(2)浏览学生信息;
(3)按学号删除学生信息。
输入一个学号,若存在该学号,则删除该学生信息;否则提示出错信息。
(4)修改学生信息。
输入一个学号,若存在该学号,则修改该学生信息;否则提示出错信息。
3.学生成绩数据处理
(1)按考试科目录入学生成绩并且按公式:
考试成绩=(语文+数学+外语)/3计算考试成绩,并计算考试名次。
(2)学生测评数据输入并计算综合测评总分及名次。
(3)学生成绩数据管理:
按学号修改、删除学生成绩数据
(4)学生成绩数据查询
按学号查询学生成绩数据
4.学生综合信息输出
输出每个学生的学号、姓名、三门课程程序、考试平均成绩、考试名次、同学互评分、德育成绩、任课教师评分、综合测评总分、综合测评名次。
三、算法提示
1.数据结构:
如果使用已学习的知识可使用多个数组分别存放学生学号、姓名信息和学生成绩,数组下标相同者为同一学生信息。
如果能自学结构体及结构体数组章节内容,则可以使用结构体数组存储学生信息和成绩信息。
四、测试数据
学生人数:
N=5
主函数
#include
#include"Boyson.h"
#include
#definem10
structstudents[m];
voidmain()
{
system("cls");
intchoice,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;
}
elseif(choice>0&&choice<4)
switch(choice)
{
case1:
n=sdxxcl();
break;
case2:
k=sdcjcl(n);
break;
case3:
cjsc(s,k);
break;
}
}
}
intsdxxcl()
{
system("cls");
inti,n,choice,j;
structstudenttemp;
while
(1)
{
printf("[.......学生信息处理.......]\n");
printf(".....1.输入学生信息.....\n");
printf(".....2.增加学生信息并浏览学生信息.....\n");
printf(".....3.按学号删除学生信息.....\n");
printf(".....4.修改学生信息.....\n");
printf(".....0.结束程序的使用.....\n");
printf("[.......学生综合测评系统.......]\n");
printf("请你选择一个你想进行服操作的choice=");
scanf("%d",&choice);
printf("\n");
if(choice==0)
{
printf("程序使用已经结束\n");
break;
}
elseif(choice>0&&choice<5)
switch(choice)
{
case1:
n=input(s);
for(j=1;j for(i=0;i if(s[i].number>s[i+1].number) { temp=s[i]; s[i]=s[i+1]; s[i+1]=temp; } printf("排序好的学生信息为: \n"); printf("学号\t姓名\n"); for(i=0;i printf("%d\t%s\n",s[i].number,s[i].name); break; case2: n=insert(s,n); printf("插入后学生的信息如下所示: \n"); printf("学号\t姓名\n"); for(i=0;i printf("%d\t%s\n",s[i].number,s[i].name); break; case3: del(s,n); break; case4: fix(s,n); break; } }returnn; } intsdcjcl(intn) { system("cls"); intchoice,i; while (1) { printf("[.......学生成绩数据处理.......]\n"); printf(".....1.按考试科目语文,数学和英语输入考试成绩并计算平均分并计算考试名次.....\n"); printf(".....2.学生测评数据输入并及时综合测评总分及名次.....\n"); printf(".....3.学生成绩修改.....\n"); printf(".....4.学生成绩删除.....\n"); printf(".....5.学生成绩数据查询.....\n"); printf(".....0.结束程序的使用.....\n"); printf("[.......学生综合测评系统.......]\n"); printf("请你选择一个你想进行服操作的choice="); scanf("%d",&choice); printf("\n"); if(choice==0) { printf("程序使用已经结束\n"); break; } elseif(choice>0&&choice<6) switch(choice) { case1: averag(s,n); break; case2: ceping(s,n); break; case3: n=score(s,n); printf("修改后学生的成绩如下所示: \n"); printf("语文\t数学\t外语\t平均分\t学生互评\t德育成绩\t任课教师评分\t综合测评成绩\n"); for(i=0;i printf("%d\t%d\t%d\t%f\t%d\t%d\t%d\t%f\n",s[i].score[0],s[i].score[1],s[i].score[2],s[i].average,s[i].score[3],s[i].score[4],s[i].score[5],s[i].scort_last); break; case4: n=shanchu(s,n); printf("删除后的成绩为下所示: \n"); printf("语文\t数学\t外语\t平均分\t学生互评\t德育成绩\t任课教师评分\t综合测评成绩\n"); for(i=0;i printf("%d\t%d\t%d\t%f\t%d\t%d\t%d\t%f\n",s[i].score[0],s[i].score[1],s[i].score[2],s[i].average,s[i].score[3],s[i].score[4],s[i].score[5],s[i].scort_last); returnn; break; case5: i=research(s,n); printf("语文\t数学\t外语\t平均分\t学生互评\t德育成绩\t任课教师评分\t综合测评成绩\n"); printf("%d\t%d\t%d\t%f\t%d\t%d\t%d\t%f\n",s[i].score[0],s[i].score[1],s[i].score[2],s[i].average,s[i].score[3],s[i].score[4],s[i].score[5],s[i].scort_last); break; } printf("\n"); } } intinput(structstudents[]) { inti=0,j,n=0; structstudenttemp; printf("学号\t姓名\n"); while (1) { scanf("%d%s",&s[i].number,s[i].name); if(s[i].number==0) break; n++; i++; } returnn; } intinsert(structstudents[],intn) { inti,k; structstudenta[1]; printf("输入一个学生的信息\n"); printf("学号\t姓名\n"); scanf("%d%s",&a[0].number,a[0].name); printf("\n"); for(i=0;i if(a[0].number break; k=i; for(i=n-1;i>=k;i--) s[i+1]=s[i]; s[k]=a[0]; n++; returnn; } voiddel(structstudents[],intn) { inti,k; printf("请输入一个你想删除的学生成绩信息的学号: \n"); scanf("%d",&k); printf("\n"); for(i=0;i if(k==s[i].number) { k=i; n--; for(i=k;i s[i]=s[i+1]; printf("删除后学生的信息如下所示: \n"); printf("学号\t姓名\n"); for(i=0;i printf("%d\t%s\n",s[i].number,s[i].name); } if(k>s[i].number) printf("所输入的这个学号不存在! \n"); } voidfix(structstudents[],intn) { inti,a; printf("输入要修改信息的学生的学号\n"); scanf("%d",&a); printf("\n");
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 作业 学生 综合 测评 系统 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)