完整代码+学生成绩管理系统.docx
《完整代码+学生成绩管理系统.docx》由会员分享,可在线阅读,更多相关《完整代码+学生成绩管理系统.docx(16页珍藏版)》请在冰豆网上搜索。
完整代码+学生成绩管理系统
学生成绩管理系统完整版(C 语言版能运行 有截图)
源程序代码
#include
#include
#include
#include
#include
typedef struct
{
char class_0[20];
int number;
char name[20];
float electrics;
float c_program;
float multimedia;
float english;
float math;
float sport;
float polity;
float summary;
float average;
}Student;
Student stu[100];
int menu()
{
char c;
do
{
system("cls");
cout<<"********************************学生成绩管理系统
********************************"<cout<<"【1】输入数据"<cout<<"【2】显示所有数据"<cout<<"【3】按平均分降序排列"<cout<<"【4】查找并显示一组数据"<cout<<"【5】插入一组数据"<cout<<"【6】修改一组数据"<cout<<"【7】删除一组数据"<cout<<"【8】从文件中读入数据"<cout<<"【9】将所有记录写入文件"<cout<<"【0】退出本系统\n"<cout<<"**********************作者:
孟强0611103 班
2011212423************************"<cout<<"请你选择操作(0-9):
"<c=getchar();
}
while(c<'0'||c>'9');
return(c-'0');
}
int Input(Student stud[],int n)
{
int i=0;
char sign,x[10];
while(sign!
='n'&&sign!
='N')
{
cout<<"请输入学生的班级:
";
cin>>stud[n+i].class_0;
cout<<"请输入学生的学号:
";
cin>>stud[n+i].number;
cout<<"请输入学生的姓名:
";
cin>>stud[n+i].name;
cout<<"请输入该学生『电子电路』的成绩:
";
cin>>stud[n+i].electrics;
cout<<"请输入该学生『C 语言程序设计』的成绩:
";
cin>>stud[n+i].c_program;
cout<<"请输入该学生『多媒体技术』的成绩:
";
cin>>stud[n+i].multimedia;
cout<<"请输入该学生『大学英语』的成绩:
";
cin>>stud[n+i].english;
cout<<"请输入该学生『高等数学』的成绩:
";
cin>>stud[n+i].math;
cout<<"请输入该学生『大学体育』的成绩:
";
cin>>stud[n+i].sport;
cout<<"请输入该学生『马克思主义基本原理』的成绩:
";
cin>>stud[n+i].polity;
stud[n+i].summary=stud[n+i].electrics+stud[n+i].c_program+stud[n+i].multimedia+stud[n+i].engl
ish+stud[n+i].math+stud[n+i].sport+stud[n+i].polity;
stud[n+i].average=stud[n+i].summary/7;
cout<<"该学生的总分为:
"<"<gets(x);
cout<<"=====>提示:
继续写入成绩?
(Y/N)";
cin>>sign;
i++;
}
return(n+i);
}
void Display(Student stud[],int n)
{
int i;
if(!
stud)cout<<"没有记录";
else{
cout<<"--------------------------------------------------------------------------------"<cout<<"班级 学号姓名电子 C 语言 多媒体 英语 数学 体育马克思 总
分 平均分"<cout<<"--------------------------------------------------------------------------------"<for(i=1;i{
stud[i-1].summary=stud[i-1].electrics+stud[i-1].c_program+stud[i-1].multimedia+stud[i-
1].english+
stud[i-1].math+stud[i-1].sport+stud[i-1].polity;
stud[i-1].average=stud[i-1].summary/7;
cout<"<"<stud[i-1].math<<""<"<}
cout<<"\t\t\t"<system("pause");
}
void Sort(Student stud[],int n)
{
int i,j,k;
float s;
char t[20];
for(i=0;ifor(j=0;jif(stud[j].average{
strcpy(t,stud[j+1].class_0);
strcpy(stud[j+1].class_0,stud[j].class_0);
strcpy(stud[j].class_0,t);
k=stud[j+1].number;
stud[j+1].number=stud[j].number;
stud[j].number=k;
strcpy(t,stud[j+1].name);
strcpy(stud[j+1].name,stud[j].name);
strcpy(stud[j].name,t);
s=stud[j+1].electrics;
stud[j+1].electrics=stud[j].electrics;
stud[j].electrics=s;
s=stud[j+1].c_program;
stud[j+1].c_program=stud[j].c_program;
stud[j].c_program=s;
s=stud[j+1].multimedia;
stud[j+1].multimedia=stud[j].multimedia;
stud[j].multimedia=s;
s=stud[j+1].english;
stud[j+1].english=stud[j].english;
stud[j].english=s;
s=stud[j+1].math;
stud[j+1].math=stud[j].math;
stud[j].math=s;
s=stud[j+1].sport;
stud[j+1].sport=stud[j].sport;
stud[j].sport=s;
s=stud[j+1].polity;
stud[j+1].polity=stud[j].polity;
stud[j].polity=s;
s=stud[j+1].summary;
stud[j+1].summary=stud[j].summary;
stud[j].summary=s;
s=stud[j+1].average;
stud[j+1].average=stud[j].average;
stud[j].average=s;
}
cout<<"--------------------------------------------------------------------------------"<cout<<" 班级学号姓名电子C 语言多媒体英语数学体育马克思
总分平均分"<cout<<"--------------------------------------------------------------------------------"<for(i=1;i{
stud[i-1].summary=stud[i-1].electrics+stud[i-1].c_program+stud[i-1].multimedia+stud[i-
1].english+
stud[i-1].math+stud[i-1].sport+stud[i-1].polity;
stud[i-1].average=stud[i-1].summary/7;
cout<1].c_program<stud[i-1].math<1].average<}
}
int Insert(Student stud[],int n)
{
char x[10];
cout<<"请输入学生的班级:
"<cin>>stud[n].class_0;
cout<<"请输入学生的学号:
";
cin>>stud[n].number;
cout<<"请输入学生的姓名:
";
cin>>stud[n].name;
cout<<"请输入该学生『电子电路』的成绩:
";
cin>>stud[n].electrics;
cout<<"请输入该学生『C 语言程序设计』的成绩:
";
cin>>stud[n].c_program;
cout<<"请输入该学生『多媒体技术』的成绩:
";
cin>>stud[n].multimedia;
cout<<"请输入该学生『大学英语』的成绩:
";
cin>>stud[n].english;
cout<<"请输入该学生『高等数学』的成绩:
";
cin>>stud[n].math;
cout<<"请输入该学生『大学体育』的成绩:
";
cin>>stud[n].sport;
cout<<"请输入该学生『马克思主义基本原理』的成绩:
";
cin>>stud[n].polity;
stud[n].summary=stud[n].electrics+stud[n].c_program+stud[n].multimedia+stud[n].english+
stud[n].math+stud[n].sport+stud[n].polity;
stud[n].average=stud[n].summary/7;
gets(x);
n++;
Sort(stu,n);
cout<<"=====>提示:
插入成功!
"<return(n);
}
int Delete(Student stud[],int n)
{
int s;
int i=0,j;
cout<<"输入需要删除学生的学号:
"<cin>>s;
while((stud[i].number-s)!
=0&&iif(i==n)
{
cout<<"=====>提示:
对不起,无法找到改学号……"<return(n);
}
for(j=i;j{
strcpy(stud[j].class_0,stud[j+1].class_0);
stud[j].number=stud[j+1].number;
strcpy(stud[j].name,stud[j+1].name);
stud[j].electrics=stud[j+1].electrics;
stud[j].c_program=stud[j+1].c_program;
stud[j].multimedia=stud[j+1].multimedia;
stud[j].english=stud[j+1].english;
stud[j].math=stud[j+1].math;
stud[j].sport=stud[j+1].sport;
stud[j].polity=stud[j+1].polity;
}
cout<<"=====>提示:
已成功删除!
"<return(n-1);
}
void Search(Student stud[],int n)
{
int s;
int i=0;
cout<<"输入需要查找学生的学号:
"<cin>>s;
while((stud[i].number-s)!
=0&&iif(i==n)
{
cout<<"=====>提示:
对不起,无法找到该学生的信息!
"<return;
}
cout<<"---------------------------"<cout<<"班级:
"<cout<<"学号:
"<cout<<"姓名:
"<cout<<"电子电路:
"<cout<<"C 语言程序设计:
"<cout<<"多媒体技术:
"<cout<<"大学英语:
"<cout<<"高等数学:
"<cout<<"大学体育:
"<cout<<"马克思主义基本原理:
"<cout<<"总分:
"<cout<<"平均分:
"<}
void Modify(Student stud[],int n)
{
int s;
int i=0;
cout<<"输入需要修改成绩学生的学号:
"<cin>>s;
while((stud[i].number-s)!
=0&&iif(i==n)
{
cout<<"=====>提示:
对不起,无该学生的成绩……"<return;
}
cout<<"-----------------------------------该学生的信息---------------------------------"<cout<<" 班级学号姓名电子C 语言多媒体英语数学体育马
克思总分平均分"<cout<<"--------------------------------------------------------------------------------"<stud[i].summary=stud[i].electrics+stud[i].c_program+stud[i].multimedia+stud[i].english+
stud[i].math+stud[i].sport+stud[i].polity;
stud[i].average=stud[i].summary/7;
cout<1].c_program<stud[i-1].math<1].average<cout<<"请输入学生的班级:
"<cin>>stud[n+i].class_0;
cout<<"请输入学生的学号:
"<cin>>stud[n+i].number;
cout<<"请输入学生的姓名:
"<cin>>stud[n+i].name;
cout<<"请输入该学生『电子电路』的成绩:
"<cin>>stud[n+i].electrics;
cout<<"请输入该学生『C 语言程序设计』的成绩:
"<cin>>stud[n+i].c_program;
cout<<"请输入该学生『多媒体技术』的成绩:
"<cin>>stud[n+i].multimedia;
cout<<"请输入该学生『大学英语』的成绩:
"<cin>>stud[n+i].english;
cout<<"请输入该学生『高等数学』的成绩:
"<cin>>stud[n+i].math;
cout<<"请输入该学生『大学体育』的成绩:
"<cin>>stud[n+i].sport;
cout<<"请输入该学生『马克思主义基本原理』的成绩:
"<cin>>stud[n+i].polity;
stud[i].summary=stud[i].electrics+stud[i].c_program+stud[i].multimedia+stud[i].english+stud[i].
math+stud[i].sport+stud[i].polity;
stud[i].average=stud[i].summary/7;
cout<<"该学生的总分为:
"<"<}
int Read(Student stud[],int n)
{
int i=0,num;
FILE *fp;
char filename[20];
cout<<"输入文件名:
"<cin>>filename;
if((fp=fopen(filename,"rb"))==NULL)
{
cout<<"=====>提示:
无法打开这个文件!
"<cout<<"\t\t\t";
system("pause");
return(n);
}
fscanf(fp,"%d",&num);
while(i{
fscanf(fp,"%s%d%s%f%f%f%f%f%f%f%f%f",stud[n+i].class_0,&stud[n+i].number,stud[n+i].na
me,&stud[n+i].electrics,&stud[n+i].c_program,&stud[n+i].multimedia,&stud[n+i].english,&stud[
n+i].math,&stud[n+i].sport,&stud[n+i].polity,&stud[n+i].summary,&stud[n+i].average);
i++;
}
n+=num;
fclose(fp);
cout<<"=====>提示:
读入数据成功,可选择【显示所有成绩】查看"<cout<<"\t\t\t";
system("pause");
return(n);
}
void Save(Student stud[],int n)
{
int i=0;
FILE *fp;
char filename[20];
cout<<"输入文件名:
";
cin>>filename;
if((fp=fopen(filename,"w"))==NULL)
{
cout<<"=====>提示:
无法打开这个文件!
"<system("pause");
return;
}
fprintf(fp,"%d\n",n);
while(i{
printf(fp,"%-8s%-8d%-6s%-6.1f%-7.1f%-7.1f%-6.1f%-6.1f%-6.1f%-7.1f%-8.1f%-
.2\n",stud[i].class_0,stud[i].number,stud[i].name,stud[i].electrics,stud[i].c_program,stud[i].multi
media,stud[i].english,
stud[i].math,stud[i].sport,stud[i].polity,stud[i].summary,stud[i].average);
i++;
}
fclose(fp);
cout<<"=====>提示:
已成功写入数据!
"<}
void main()
{
int n=0;
for(;;)
{
switch(menu())
{
case 1:
cout<> 输入成绩 <<===="<n=Input(stu,n);
break;
case 2:
cout<> 显示所有记录 <<===="<Display(s