发布时间 : 星期日 文章基于C++的学生成绩管理系统设计更新完毕开始阅读f789533cba68a98271fe910ef12d2af90242a8fd
printf(\没有你输入的学号!\\n\ } printf(\请输入要删除的学号,退出请按'0':\ scanf(\ }
Display(stu,Max);
return (Max); }
4.5详细代码描述
#include
#define MaxNum 2000
#define FileName \
//定义结构体 struct score
float English; float Java; float Chinese; float C; float Math; };
typedef struct STUDENT {
int num;
char name[10]; int classes; char sex[10];
struct score mark; }Student; //函数
void SaveStu(Student stu[],int Max);
void DisplayStuInf(Student stu[],int Max); void DisplayMainMenu();
int Delete(Student stu[],int Max); int InforInput(Student stu[],int id); int Read(Student stu[]);
9
void Sort(Student stu[],int Max);
int FindStuNum(Student stu[],int findunm,int Max);
int FindStuName(Student stu[],char findname[],int Max); void QueryInformation(Student stu[],int Max);//查询学生信息 void Edit(Student stu[],int Max); void Name(Student stu[],int Max);
void EnglishCore(Student stu[],int Max); void AverageCore(Student stu[],int Max); void Display(Student stu[],int Max); void Count(Student stu[],int Max); void English(Student stu[],int Max); void Java(Student stu[],int Max); void Chinese(Student stu[],int Max); void C(Student stu[],int Max); void Math(Student stu[],int Max); void StuCore(Student stu[],int Max); void Count(Student stu[],int Max) int select;
printf(\英语成绩统计\\n\\n\\t2.Java成绩统计\\n\\n\\t3.语文成绩统计\\n\\n\\t4.C成绩统计\\n\\n\\t5.数学成绩统计\\n\\n\\t6.学生成绩统计\\n\\n\\t0.退出\\n\\t\ printf(\请选择:\ scanf(\ while(select!=0) {
switch(select) {
case 1:
English(stu,Max); break; case 2:
Java(stu,Max); break; case 3:
Chinese(stu,Max); break; case 4:
C(stu,Max); break; case 5:
Math(stu,Max); break; case 6:
StuCore(stu,Max); break;
10
default:
printf(\输入错误!请重新输入!\\n\ }
printf(\
scanf(\ } }
void English(Student stu[],int Max) {
int i,you,liang,zhong,jige,buji; float high,low,sum,n,av;
sum=0;you=0;liang=0;zhong=0;jige=0;buji=0; low=stu[0].mark.English; high=stu[0].mark.English;
printf(\英语成绩统计:\\n\
printf(\优\\t良\\t中\\t及格\\t不及格\\t最高分\\t最低分\\t平均分\\t及格率\\n\
for(i=0;i sum=sum+stu[i].mark.English; if(stu[i].mark.English>high) high=stu[i].mark.English; if(stu[i].mark.English if(stu[i].mark.English>=90) you++; else if(stu[i].mark.English>=80) liang++; else if(stu[i].mark.English>=70) zhong++; else if(stu[i].mark.English>=60) jige++; else buji++; } n=100*(Max-buji)/(float)Max; av=sum/Max; printf(\\\t%.2f \\t%.2f\\t %.1f%%\\n\ 11 } void Java(Student stu[],int Max) { int i,you,liang,zhong,jige,buji; float high,low,sum,n,av; sum=0;you=0;liang=0;zhong=0;jige=0;buji=0; low=stu[0].mark.Java; high=stu[0].mark.Java; printf(\成绩统计:\\n\ printf(\优\\t良\\t中\\t及格\\t不及格\\t最高分\\t最低分\\t平均分\\t及格率\\n\ for(i=0;i sum=sum+stu[i].mark.Java; if(stu[i].mark.Java>high) high=stu[i].mark.Java; if(stu[i].mark.Java if(stu[i].mark.Java>=90) you++; else if(stu[i].mark.Java>=80) liang++; else if(stu[i].mark.Java>=70) zhong++; else if(stu[i].mark.Java>=60) jige++; else buji++; } n=100*(Max-buji)/(float)Max; av=sum/Max; printf(\ige,buji,high,low,av,n); } void Chinese(Student stu[],int Max) { int i,you,liang,zhong,jige,buji; 12