#include〈iomanip>
usingnamespacestd;
intn=0,u=0;
intnumber[5][6]={{0},{0},{0},{0},{0}};//各门学科分段成绩的人数
doublepoint[5][6]={{0},{0},{0},{0},{0}};
doubleeva[5]={0,0,0,0,0};
stringfind_name;
stringfind_num;
intp;
voidsearch(string);
voidsearch(int);
voidcunqu_data();/*存取文件*/
voidsave_data();/*保存文件*/
voidread_data();/*读取文件*/
voidrenew_data();/*删除恢复*/
voiddelete_data(intm);/*删除记录*/
voidrecover_data();/*恢复记录*/
voidset_eva2();/*课程的平均成绩*/
voidput_result1();
voidput_result2();
voidput_result3();
classStudent/*定义一个Student类*/
{public:
Student();/*构造函数*/
voidset_eva();
friendvoidset_massage(intm,Studentj[]);/*友元函数*/
friendvoidadd_massage(intm,Studentj[]);/*友元函数*/
friendvoidput_massage(intm,Studentj[]);
friendvoidchange_data(intm,Studentj[]);/*修改学生信息*/
friendvoidsearch_data();/*查找学生信息*/
friendvoidsearch_name(stringname);
friendvoidsearch_num(stringnum);
friendvoidset_number();
friendvoidset_point();
friendvoidsave_data();/*保存文件*/
friendvoidread_data();/*读取文件*/
friendvoiddelete_data(intm);/*删除记录*/
friendvoidrecover_data();/*恢复记录*/
friendvoidset_eva2();/*课程的平均成绩*/
friendvoidput_result1();
private:
stringname;/*姓名*/
stringnum;/*学号*/
stringsex;/*性别*/
doubleeva;/*学习水平*/
doubleshuxue;/*数学成绩*/
doublewuli;/*物理成绩*/
doublehuaxue;/*化学成绩*/
doubleyingyu;/*英语成绩*/
doublewangluo;/*网络成绩*/
}stud[200],studl[200];
Student:
:
Student()/*定义构造函数*/
{name=”wu”;
num="wu”;
sex=”wu";
shuxue=0;
wuli=0;
huaxue=0;
yingyu=0;
wangluo=0;
}
voidStudent:
:
set_eva()//计算平均成绩
{eva=(shuxue+wuli+huaxue+yingyu+wangluo)/5;
}
voidset_massage(intm,Studentj[])
{inti;
for(i=0;i〈m;i++)
{cout<<”输入第"〈
cout〈〈”姓名学号性别数学成绩物理成绩化学成绩英语成绩网络成绩”<〈endl;
cin〉>j[i]。
name>>j[i]。
num>>j[i].sex〉〉j[i].shuxue〉>j[i]。
wuli>>j[i].huaxue>>j[i]。
yingyu〉>j[i]。
wangluo;
cout<〈’\n';
system("cls");
}}
voidadd_massage(intm,Studentj[])//增加学生信息
{inti;
for(i=n;i〈n+m;i++)
{cout〈<”输入第"<
cout<〈"姓名学号性别数学成绩物理成绩化学成绩英语成绩网络成绩"<cin>〉j[i].name>>j[i].num〉〉j[i]。
sex〉>j[i].shuxue>>j[i]。
wuli〉>j[i]。
huaxue〉〉j[i].yingyu>〉j[i]。
wangluo;
system(”cls”);
}
n=n+m;}
voidchange_data(intm,Studentj[])//修改学生信息
{if(m==0||m〉n)
{cout<<”输入错误!
”〈else
{
cout<〈endl;
cout<〈"输入该同学的新学籍信息"<cout<〈"______________________________"〈〈endl;
cout<〈”姓名学号性别数学成绩物理成绩化学成绩英语成绩网络成绩”<〈endl;
cin>〉j[m-1].name〉>j[m—1].num〉〉j[m—1].sex>〉j[m-1].shuxue>〉j[m-1]。
wuli>〉j[m-1].huaxue>>j[m-1]。
yingyu〉〉j[m-1]。
wangluo;
system("cls");
cout<}
voidput_massage(intm,Studentj[])
{inti;
cout〈<"________________________________________________________________”〈cout<<"|序号|姓名|学号|性别|数学|物理|化学|英语|网络|"〈〈endl;
cout〈〈"|——--|-————-—-|————————-—|—--—|—-—-|---—|--—-|—--—|————|"〈〈endl;
for(i=0;i{
cout<〈"|”;cout<〈”"<〈setfill('\0’)<:
left)〈〈setiosflags(ios:
:
fixed)〈cout<〈""<〈setfill('\0’)〈:
left)<〈setiosflags(ios:
:
fixed)〈name;cout<<”|”;
cout<:
left)〈:
fixed)<〈setprecision(0)<num;cout〈〈"|”;
cout<<””<〈setfill('\0’)<〈setw(3)〈〈setiosflags(ios:
:
left)〈:
fixed)<sex;cout<〈"|";
cout<〈""<:
left)〈〈setiosflags(ios:
:
fixed)<〈setprecision(0)<shuxue;cout〈〈"|";
cout〈〈”"<:
left)<〈setiosflags(ios:
:
fixed)〈〈setprecision(0)〈〈j[i].wuli;cout〈〈"|”;
cout<〈"”〈:
left)〈:
fixed)<〈setprecision(0)<〈j[i].huaxue;cout<<"|”;
cout<〈"”〈:
left)<〈setiosflags(ios:
:
fixed)<〈setprecision(0)<〈j[i].yingyu;cout<<”|";
cout<<"”〈:
left)〈〈setiosflags(ios:
:
fixed)<〈setprecision(0)<wangluo;cout<<”|";
cout〈〈'\n';}
cout〈〈"|____|________|__________|____|____|____|____|____|____|”〈〈endl;
}
voidsearch_data()//查找功能
{chara;
for(a='0’;a=='0’||a!
='4’;)
{system(”cls");
cout〈<"1.按姓名查找”〈按学号查找”〈cin〉〉a;
system(”cls");
switch(a)
{case'1’:
cout<<”输入您需要查找的学生姓名:
”;cin>>find_name;search_name(find_name);break;
case'2':
cout〈<”输入您需要查找的学号:
”;cin〉〉find_num;search_num(find_num);break;
case’3':
cout<〈endl;
cout<<"学生学籍信息"〈put_massage(n,stud);getch();break;
case’4':
break;
default:
cout<按任意键返回."<〈endl;getch();break;
}}
}
voidsearch_name(stringname)//按姓名查找
{inti;
boolflag=false;
for(i=0;i〈n;i++)
if(stud[i].name==name)
{cout<<”________________________________________________________________"〈cout<〈”|序号|姓名|学号|性别|数学|物理|化学|英语|网络|”<〈endl;
cout〈<"|————|—-—————-|——-—--—--—|——-—|-—-—|——-—|-———|————|---—|”〈〈endl;
cout<<"|";cout<<””<:
left)<〈i+1;cout<〈”|";
cout〈<”"〈:
left)〈cout<:
left)<〈stud[i]。
num;cout<<”|”;
cout<<”"〈〈setfill('\0')<:
left)〈〈stud[i]。
sex;cout<<"|”;
cout〈<""<〈setfill(’\0’)<〈setw(3)〈:
left)〈cout<〈"”〈〈setfill(’\0')<:
left)<wuli;cout〈〈"|”;
cout〈<”"<〈setfill(’\0')<:
left)<cout〈<”"〈:
left)〈yingyu;cout<<"|";
cout<<""〈〈setfill('\0’)<〈setw(3)<:
left)〈〈stud[i].wangluo;cout<<"|";
cout〈<’\n’;
cout〈<"|____|________|__________|____|____|____|____|____|____|”<〈endl;
flag=true;
break;
}
if(flag==false)
cout<<”对不起,暂无此学生信息";
getch();}
voidsearch_num(stringnum)//按学号查找
{inti;
boolflag=false;
for(i=0;iif(stud[i].num==num)
{cout<〈"________________________________________________________________"〈〈endl;
cout〈〈"|序号|姓名|学号|性别|数学|物理|化学|英语|网络|”<〈endl;
cout〈〈"|--—-|-—-—--——|-———--—-——|———-|—-—-|———-|——-—|————|——--|"<〈endl;
cout〈〈"|";cout〈〈””〈:
left)<
cout<〈”"〈:
left)<〈stud[i]。
name;cout〈〈"|”;
cout〈〈setfill(’\0’)<〈setw(10)<:
left)〈〈stud[i].num;cout<〈"|”;
cout<〈"”<〈setfill('\0’)<:
left)<〈stud[i]。
sex;cout〈〈”|";
cout<〈"”<:
left)〈cout〈〈”"〈〈setfill('\0')〈〈setw(3)〈:
left)<〈stud[i].wuli;cout〈<”|";
cout〈〈""<:
left)<〈stud[i]。
huaxue;cout<〈”|";
cout〈<”"〈:
left)<cout<<""<:
left)〈〈stud[i].wangluo;cout〈<"|";
cout〈<'\n';
cout〈<"|____|________|__________|____|____|____|____|____|____|”<〈endl;
flag=true;
break;
}
if(flag==false)
cout〈<"对不起,暂无此学生信息”;
getch();}
voidset_number()//number[][]开始
{inte,f,i,t;
for(e=0,f=0,t=0,i=0;i{if(stud[i]。
shuxue==100)
t++;
}
number[e][f]=t;
for(e=1,f=0,t=0,i=0;i{if(stud[i]。
wuli==100)
t++;
}
number[e][f]=t;
for(e=2,f=0,t=0,i=0;i〈n;i++)
{if(stud[i].huaxue==100)
t++;
}
number[e][f]=t;
for(e=3,f=0,t=0,i=0;i{if(stud[i]。
yingyu==100)
t++;
}
number[e][f]=t;
for(e=4,f=0,t=0,i=0;i〈n;i++)
{if(stud[i].wangluo==100)
t++;
}
number[e][f]=t;
for(e=0,f=1,t=0,i=0;i〈n;i++)//90~99
{if(stud[i].shuxue〉=90&&stud[i].shuxue<=99)
t++;
}
number[e][f]=t;
for(e=1,f=1,t=0,i=0;i〈n;i++)//90~99
{if(stud[i]。
wuli〉=90&&stud[i].wuli〈=99)
t++;
}
number[e][f]=t;
for(e=2,f=1,t=0,i=0;i〈n;i++)//90~99
{if(stud[i]。
huaxue〉=90&&stud[i].huaxue〈=99)
t++;
}
number[e][f]=t;
for(e=3,f=1,t=0,i=0;i〈n;i++)//90~99
{if(stud[i]。
yingyu〉=90&&stud[i]。
yingyu<=99)
t++;
}
number[e][f]=t;
for(e=4,f=1,t=0,i=0;i{if(stud[i]。
wangluo>=90&&stud[i].wangluo〈=99)
t++;
}
number[e][f]=t;
for(e=0,f=2,t=0,i=0;i〈n;i++)//80~89
{if(stud[i]。
shuxue>=80&&stud[i].shuxue〈=89)
t++;
}
number[e][f]=t;
for(e=1,f=2,t=0,i=0;i〈n;i++)//80~89
{if(stud[i]。
wuli>=80&&stud[i].wuli〈=89)
t++;
}
number[e][f]=t;
for(e=2,f=2,t=0,i=0;i{if(stud[i].huaxue〉=80&&stud[i].huaxue<=89)
t++;
}
number[e][f]=t;
for(e=3,f=2,t=0,i=0;i〈n;i++)//80~89
{if(stud[i]。
yingyu〉=80&&stud[i]。
yingyu〈=89)
t++;
}
number[e][f]=t;
for(e=4,f=2,t=0,i=0;i{if(stud[i]。
wangluo>=80&&stud[i]。
wangluo<=89)
t++;
}
number[e][f]=t;
for(e=0,f=3,t=0,i=0;i{if(stud[i]。
shuxue〉=90&&stud[i].shuxue〈=99)
t++;
}
number[e][f]=t;
for(e=1,f=3,t=0,i=0;i〈n;i++)//70~79
{if(stud[i]。
wuli〉=70&&stud[i]。
wuli<=79)
t++;
}
number[e][f]=t;
for(e=2,f=3,t=0,i=0;i{if(stud[i]。
huaxue>=70&&stud[i]。
huaxue〈=79)
t++;
}
number[e][f]=t;
for(e=3,f=3,t=0,i=0;i〈n;i++)//70~79
{if(stud[i]。
yingyu〉=70&&stud[i]。
yingyu<=79)
t++;
}