c语言大作业 班级成绩管理系统Word下载.docx
《c语言大作业 班级成绩管理系统Word下载.docx》由会员分享,可在线阅读,更多相关《c语言大作业 班级成绩管理系统Word下载.docx(20页珍藏版)》请在冰豆网上搜索。
![c语言大作业 班级成绩管理系统Word下载.docx](https://file1.bdocx.com/fileroot1/2023-1/30/71cc61bd-daf6-43cc-a65e-00b739a10d4d/71cc61bd-daf6-43cc-a65e-00b739a10d4d1.gif)
voiddisplay3();
/*显示函数3*/
voiddisplay4();
/*显示函数4*/
voiddisplay5();
/*显示数据函数5*/
voiddisplay6();
/*显示数据函数6*/
voidread();
/*读取函数*/
voidaverage();
/*求平均分函数*/
voidsum();
/*求总分函数*/
voidsave();
/*数据备份函数*/
voidsortname();
/*按姓名排序函数*/
voidmath();
/*数学函数*/
voidenglish();
/*英语函数*/
voidClanguage();
/*C语言函数*/
voidMdrawing();
/*机械制图函数*/
voidPhysics();
/*物理函数*/
intnumber=0;
/*声明一个全局变量:
现在所输入的人数*/
structstudent
{
intno;
charname[20];
charsex[4];
floatscore1;
floatscore2;
floatscore3;
floatscore4;
floatscore5;
floatsort;
floatave;
floatsum;
};
structstudentstu[MAX],*p;
/*定义结构体数组和结构体指针*/
voidmain()/*主函数*/
intas;
system("
color0E"
);
/*系统颜色的调用*/
printf("
\n\t\t\t欢迎进入学生成绩管理系统\n\t\t*******************************************\n"
do
{/*一下为功能选择模块*/
\n\n\t\t\t\t1.录入"
\n\n\t\t\t\t2.姓名查询"
\n\n\t\t\t\t3.学号查询"
\n\n\t\t\t\t4.修改"
\n\n\t\t\t\t5.排序"
\n\n\t\t\t\t6.统计"
\n\n\t\t\t\t7.数据备份"
\n\n\t\t\t\t0.退出"
\n\n\t\t\t请选择:
"
fflush(stdin);
scanf("
%d"
&
as);
switch(as)
{
case1:
system("
cls"
input();
break;
/*清除屏幕;
调用input()函数;
退出switch()语句*/
case2:
findname();
case3:
findnumber();
case4:
modify();
case5:
sort();
case6:
statistics();
case7:
save();
case0:
exit"
/*退出系统*/
default:
printf("
\t\t\t数据错误!
请重新选择:
}
}while
(1);
}/*到此该功能结束*/
voidinput()/*数据录入模块*/
inti=0;
charch;
do
\t\t\t\t1.录入学生信息\n输入第%d个学生的信息\n"
i+1);
\n学号:
stu[i].no);
\n姓名:
%s"
stu[i].name);
\n性别:
stu[i].sex);
\n高等数学成绩:
%f"
stu[i].score1);
\n英语成绩:
stu[i].score2);
\nC语言成绩:
stu[i].score3);
\n机械制图成绩:
stu[i].score4);
\n物理成绩:
stu[i].score5);
\n\n"
i++;
number=i;
是否继续输入?
(Y/N)"
ch=getch();
}
while(ch!
='
n'
&
ch!
N'
voidfindname()/*姓名查询函数*/
inti;
charstr[20],as;
输入要查询的学生姓名:
gets(str);
for(i=0;
i<
number;
i++)
if(!
strcmp(stu[i].name,str))
{average();
\t学号\t姓名\t性别\t高数\t英语\tC语言\t机械制图\t物理\t平均分\n"
\t%d\t%s\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\n"
stu[i].no,stu[i].name,stu[i].sex,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].score4,stu[i].score5,stu[i].ave);
\t\t按任意键返回主菜单."
as=getch();
while(!
voidfindnumber()/*学号查询函数*/
charas;
intnum;
输入要查询的学生学号:
num);
if(stu[i].no==num)
voidmodify()/*修改数据函数*/
charstr[20];
输入要修改的学生姓名:
fflush(stdin);
gets(str);
for(i=0;
if(!
\n\t\t输入新插入学生信息\n"
\n高数成绩:
stu[i]);
break;
voidsort()/*排序数据函数*/
intk;
\n\n\t\t\t\t1.按平均分排序"
\n\n\t\t\t\t2.按数学排序"
\n\n\t\t\t\t3.按英语排序"
\n\n\t\t\t\t4.按C语言排序"
\n\n\t\t\t\t4.按机械制图排序"
\n\n\t\t\t\t4.按物理排序"
\n\n\t\t\t\t5.按姓名排序"
k);
switch(k)
average();
调用average()函数;
math();
调用math()函数;
english();
调用english()函数;
Clanguage();
调用Clanguage()函数;
Mdrawing();
调用Mdrawing()函数;
Physics();
调用Physics()函数;
sortname();
调用sortname();
函数;
}while(k<
1||k>
7);
structstudenttemp;
/*结构体函数*/
inti,j;
for(i=1;
for(j=1;
j<
=number-i;
j++)
if(stu[i-1].ave<
stu[i].ave)
temp=stu[i];
stu[i]=stu[i-1];
stu[i-1]=temp;
}display();
voidmath()/*数学函数*/
structstudenttemp;
inti,j;
if(stu[i-1].score1<
stu[i].score1)
}display1();
voidenglish()/*英语函数*/
if(stu[i-1].score2<
stu[i].score2)
}display2();
voidClanguage()/*c语言函数*/
if(stu[i-1].score3<
stu[i].score3)
}display3();
voidMdrawing()/*机械制图函数*/
if(stu[i-1].score4<
stu[i].score4)
}display5();
voidPhysics()/*物理函数*/
if(stu[i-1].score5<
stu[i].score5)
}display6();
voidsortname()/*按姓名排序函数*/
=number;
if(strcmp(stu[i].name,stu[i+1].name)<
0)//比较首字符的ASCII
//互换
stu[i]=stu[i+1];
stu[i+1]=temp;
}display4();
voiddisplay()/*显示数据函数*/
inti;
charas;
average();
\t\t\t班级学生信息列表\n"
\n按平均分排序\n"
number&
stu[i].name[0];
\n\t\t按任意键返回主菜单."
voiddisplay0()/*显示数据函数0*/
sum();
\n按总分排序\n"
\t学号\t姓名\t性别\t高数\t英语\tC语言\t机械制图\t物理\t总分\n"
stu[i].no,stu[i].name,stu[i].sex,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].score4,stu[i].score5,stu[i].sum);
voiddisplay1()/*显示数据函数1*/
{
\n按数学排序\n"
\n\t学号\t姓名\t性别\t高数\n"
\t%d\t%s\t%s\t%.2f\n"
stu[i].no,stu[i].name,stu[i].sex,stu[i].score1);
}while(!
voiddisplay2()/*显示数据函数2*/
\n按英语排序\n"
\n\t学号\t姓名\t性别\t英语\n"
stu[i].no,stu[i].name,stu[i].sex,stu[i].score2);
voiddisplay3()/*显示数据函数3*/
\n按C语言排序\n"
\n\t学号\t姓名\t性别\tC语言\n"
stu[i].no,stu[i].name,stu[i].sex,stu[i].score3);
voiddisplay4()/*显示数据函数4*/
\n按姓名排序\n"
\n\t学号\t姓名\t性别\t数学\t英语\tC语言\t机械制图\t物理\n"
stu[i].name;
\t%d\t%s\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\n"
stu[i].no,stu[i].name,stu[i].sex,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].score4,stu[i].score5);
voiddisplay5()/*显示数据函数5*/
\n按机械制图排序\n"
\n\t学号\t姓名\t性别\t机械制图\n"
stu[i].no,stu[i].name