1.题目:学生成绩管理系统2.基本要求(1)要求用VisualC++语言来实现一个简单的学生成绩管理系统,该系统完成之后,基本上要能够无错运行,能达到学生成绩管理系统的基本要求。(2)各个功能分别使用函数来完成,主函数和各个函数分别存放在不同的.CPP文件中,要求使用头文件。(3)准备系统模拟的数据,不得少于10条。(4)成绩管理程序至少应具备以下功能:1)输入:学生的基本信息,包括学号.姓名.性别.籍贯.VisualC++成绩.英语成绩.物理成绩等;2)计算:每个学生的总成绩.平均成绩.所有学生单科的平均成绩,找出总成绩和单科成绩最高的学生并输出;3)查询:可以按学号.姓名.VisualC++成绩查询4)4)排序:可以按学号.姓名.VisualC++成绩.英语成绩.物理成绩.总成绩.平均成绩等进行排序并输出;5)删除:删除某条记录;6)帮助和关于;7)退出:退出整个系统的运行。8)可以增加更多的菜单项,比如设置颜色.字体风格等。程序如下:#includeiostream.h#includestring.hstructnode{intnum;charname[10];charsex[10];charjiguan[10];floatCscore;floatEscore;floatPscore;floatsum;floataverage;node*next;};node*create(){node*head;node*p,*pend;inta;charb[10];charc[10];charf[10];floatd1,d2,d3;cout请输入学号,姓名,性别,籍贯,C++成绩,英语成绩,物理成绩:;cinabcfd1d2d3;head=0;inti=0;while(i2){p=newnode;p-num=a;strcpy(p-name,b);strcpy(p-sex,c);strcpy(p-jiguan,f);p-Cscore=d1;p-Escore=d2;p-Pscore=d3;p-sum=(d1+d2+d3);p-average=(d1+d2+d3)/3;if(head==0){head=p;pend=p;}else{pend-next=p;pend=p;}i++;cout请输入学号,姓名,性别,籍贯,C++成绩,英语成绩,物理成绩:;cinabcfd1d2d3;}if(head)pend-next=0;returnhead;}voidprint(node*head){node*p;floatm,n,k;p=head;while(p){m+=p-Cscore;n+=p-Escore;k+=p-Pscore;p=p-next;}m/=3;n/=3;k/=3;node*p1,*p2,*p3,*p4,*p5;p1=p2=p3=p4=p5=head;while(p2){if(p2-sump1-sum)p1=p2;if(p2-Cscorep3-Cscore)p3=p2;if(p2-Escorep4-Escore)p4=p2;if(p2-Pscorep5-Pscore)p5=p2;p2=p2-next;}cout总成绩最高的学生:;coutp1-num'\t'p1-name'\t'p1-sex'\t'p1-jiguan'\t'p1-Cscore'\t'p1-Escore'\t'p1-Pscoreendl;coutC++成绩最高的学生:;coutp3-num'\t'p3-name'\t'p3-sex'\t'p3-jiguan'\t'p3-Cscore'\t'p3-Escore'\t'p3-Pscoreendl;cout英语成绩最高的学生:;coutp4-num'\t'p4-name'\t'p4-sex'\t'p4-jiguan'\t'p4-Cscore'\t'p4-Escore'\t'p4-Pscoreendl;cout物理成绩最高的学生:;coutp5-num'\t'p5-name'\t'p5-sex'\t'p5-jiguan'\t'p5-Cscore'\t'p5-Escore'\t'p5-Pscoreendl;}voidsearch(node*head,intdata){node*p;intm=0;p=head;if(head-num==data){m=1;}while(p-next&&p-num!=0)p=p-next;if(p-num==data){m=1;}if(m==1)coutp-num'\t'p-name'\t'p-sex'\t'p-jiguan'\t'p-Cscore'\t'p-Escore'\t'p-Pscoreendl;elsecout查询失败endl;}voidsearch(node*head,charn[10]){node*p;intm=0;p=head;if(strcmp(head-name,n)==0){m=1;}while(p-next&&(p-name,n)!=0)p=p-next;if(strcmp(p-name,n)==0){m=1;}if(m==1)coutp-num'\t'p-name'\t'p-sex'\t'p-jiguan'\t'p-Cscore'\t'p-Escore'\t'p-Pscoreendl;elsecout查询失败endl;}node*sort1(node*head){node*p=head,*p1,*p2;while(p-next!=0){p1=p;p2=p-next;while(p2!=0){if(p2-nump1-num)p1=p2;p2=p2-next;}if(p!=p1){intr;charx[10];floats,t,i,j,h;r=p-num;strcpy(x,p-name);s=p-Cscore;t=p-Escore;i=p-Pscore;j=p-sum;h=p-average;p-num=p1-num;strcpy(p-name,p1-name);p-Cscore=p1-Cscore;p-Escore=p1-Escore;p-Pscore=p1-Pscore;p-sum=p1-sum;p-average=p1-average;p1-num=r;strcpy(p1-name,x);p1-Cscore=s;p1-Escore=t;p1-Pscore=i;p1-sum=j;p1-average=h;}p=p-next;}returnhead;}node*sort2(node*head){node*p=head,*p1,*p2;while(p-next!=0){p1=p;p2=p-next;while(p2!=0){if(strcmp(p2-name,p1-name)0)p1=p2;p2=p2-next;}if(p!=p1){intr;charx[10];floats,t,i,j,h;r=p-num;strcpy(x,p-name);s=p-Cscore;t=p-Escore;i=p-Pscore;j=p-sum;h=p-average;p-num=p1-num;strcpy(p-name,p1-name);p-Cscore=p1-Cscore;p-Escore=p1-Escore;p-Pscore=p1-Pscore;p-sum=p1-sum;p-average=p1-average;p1-num=r;strcpy(p1-name,x);p1-Cscore=s;p1-Escore=t;p1-Pscore=i;p1-sum=j;p1-average=h;}p=p-next;}returnhead;}node*sort3(node*head){node*p=head,*p1,*p2;while(p-next!=0){p1=p;p2=p-next;while(p2!=0){if(p2-Cscorep1-Cscore)p1=p2;p2=p2-next;}if(p!=p1){intr;charx[10];floats,t,i,j,h;r=p-num;strcpy(x,p-name);s=p-Cscore;t=p-Escore;i=p-Pscore;j=p-sum;h=p-average;p-num=p1-num;strcpy(p-name,p1-name);p-Cscore=p1-Cscore;p-Escore=p1-Escore;p-Pscore=p1-Pscore;p-sum=p1-sum;p-average=p1-average;p1-num=r;strcpy(p1-name,x);p1-Cscore=s;p1-Escore=t;p1-Pscore=i;p1-sum=j;p1-average=h;}p=p-next;}returnhead;p=head;}node*sort4(node*head){node*p=head,*p1,*p2;while(p-next!=0){p1=p;p2=p-next;while(p2!=0){if(p2-Escorep1-Escore)p1=p2;p2=p2-next;}if(p!=p1){intr;charx[10];floats,t,i,j,h;r=p-num;strcpy(x,p-name);s=p-Cscore;t=p-Escore;i=p-Pscore;j=p-sum;h=p-average;p-num=p1-num;strcpy(p-name,p1-name);p-Cscore=p1-Cscore;p-Escore=p1-Escore;p-Pscore=p1-Pscore;p-sum=p1-sum;p-average=p1-average;p1-num=r;strcpy(p1-name,x);p1-Cscore=s;p1-Escore=t;p1-Pscore=i;p1-sum=j;p1-average=h;}p=p-next;}returnhead;}node*sort5(node*head){node*p=head,*p1,*p2;while(p-next!=0){p1=p;p2=p-next;while(p2!=0){if(p2-Pscorep1-Pscore)p1=p2;p2=p2-next;}if(p!=p1){intr;charx[10];floats,t,i,j,h;r=p-num;strcpy(x,p-name);s=p-Cscore;t=p-Escore;i=p-Pscore;j=p-sum;h=p-average;p-num=p1-num;strcpy(p-name,p1-name);p-Cscore=p1-Cscore;p-Escore=p1-Escore;p-Pscore=p1-Pscore;p-sum=p1-sum;p-average=p1-average;p1-nu