学生成绩管理系统源程序C++.docx
- 文档编号:8586648
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:15
- 大小:17.17KB
学生成绩管理系统源程序C++.docx
《学生成绩管理系统源程序C++.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统源程序C++.docx(15页珍藏版)》请在冰豆网上搜索。
学生成绩管理系统源程序C++
#include
#include
#include
classstu
{
charname[20];
doublemath,chinese,english,average,sum;
public:
stu()
{
}
stu(charn[20],doublema,doublechin,doubleeng)
{
strcpy(name,n);
math=ma;
chinese=chin;
english=eng;
}
doublegetsum()
{
sum=chinese+english+math;
returnsum;
}
doublegetaver()
{
average=getsum()/3;
returnaverage;
}
friendvoidmain();
};
voidmain()
{
cout<<"请选择您需要的操作!
"< cout<<"操作: "< cout<<"(0)数据录入"< cout<<" (1)增加人员"< cout<<" (2)删除人员"< cout<<"(3)修改数据"< cout<<"查询: "< cout<<"(4)按总成绩查询"< cout<<"(5)按姓名查询"< cout<<"(6)输出所有学生的数据"< cout<<"成绩名词"< cout<<"(7)按总分查询排名"< cout<<"(8)按语文查询排名"< cout<<"(9)按数学查询排名"< cout<<"(y)按英语查询排名"< cout<<"选择相关操作请输入相对的括号里的阿拉伯数字! "< charp;charw; stu*s[50]; ofstream*file[50]; inti=0; intj=0; boolflag2=0; do { cin>>p; if((p>='0'&&p<='10')) flag2=1; else cout<<"指令错误! 请重新输入: "< }while(flag2==0); do{ switch(p) { case'0': { charc; charname[20];doublemath,chinese,english; do{ cout<<"请输入姓名"< cin>>name; cout<<"请输入数学成绩: "< cin>>math; cout<<"请输入语文成绩: "< cin>>chinese; cout<<"请输入外语成绩: "< cin>>english; file[j]=newofstream("d: \\document",ios: : ate); *file[j]<<"姓名"< 绩"< j++; s[i]=newstu(name,math,chinese,english); i++; cout<<"数据录入成功,想继续录入吗(y/n)"< cin>>c; flag2=0; do { if(c! ='y'&&c! ='n') { cout<<"指令错误! 请重新输入! "< cin>>c; } else flag2=1; }while(flag2==0); }while(c=='y'); break; } case'4': { doublet;charc; do { intflag1=0; cout<<"请输入你要查询学生的总成绩"< cin>>t; for(intq=0;q { if(s[q]->getsum()==t) { flag1=1; cout<<"您要查询的学生是: "<<(*s[q]).name< } } if(flag1==0) cout<<"对不起! 您要查询的学生不存在! "< cout<<"您想继续查询吗? (y/n)"< cin>>c; if(c! ='y'&&c! ='n') { cout<<"指令错误! 请重新输入! "< cin>>c; } } while(c=='y'); break; } case'5': { charn[20];intj=0;charc; do{ intflag=0; cout<<"请输入你要查询的学生姓名"< cin>>n; for(intj=0;j { if(strcmp(n,(*s[j]).name)==0) { flag=1; cout<<"您要查询的学生是: "<<(*s[j]).name< cout<<(*s[j]).name<<"的总成绩成绩是"<<(*s[j]).getsum() < "<<(*s[j]).getaver()< } } if(flag==0) cout<<"对不起! 您要查询的学生不存在! "< cout<<"您想继续查询吗? (y/n)"< cin>>c; if(c! ='y'&&c! ='n') { cout<<"指令错误! 请重新输入! "< cin>>c; } } while(c=='y'); break; } case'1': { charname[20];doublemath,chinese,english; charc; do { cout<<"请输入您要增加的学生的姓名: "< cin>>name; cout<<"请输入数学成绩: "< cin>>math; cout<<"请输入语文成绩: "< cin>>chinese; cout<<"请输入外语成绩: "< cin>>english; file[j]=newofstream("d: \\document",ios: : ate); *file[j]<<"姓名"< 绩"< j++; s[i]=newstu(name,math,chinese,english); i++; cout<<"数据录入成功,想继续录入吗(y/n)"< cin>>c; if(c! ='y'&&c! ='n') { cout<<"指令错误! 请重新输入! "< cin>>c; } }while(c=='y'); break; } case'2': { charname[20];boolflag3=0;charc; do{ cout<<"请输入您要删除的学生姓名: "< cin>>name; for(inth=0;h { if(strcmp(name,s[h]->name)==0) { flag3=1; i--; do{ s[h]=s[h+1]; h++; }while(h<=i); } } if(flag3==0) cout<<"您要求删除的对象本来就不存在! 请检查输入的正 确性! "; cout<<"要继续删除吗? (y/n)"< cin>>c; if(c! ='y'&&c! ='n') { cout<<"指令错误! 请重新输入! "< cin>>c; } }while(c=='y'); break; } case'3': { charname[20];doublemat,chin,eng;flag2=0; charc; do { cout<<"请输入您要修改的学生的姓名: "< cin>>name; for(inth=0;h { if(strcmp(name,s[h]->name)==0) { flag2=1; cout<<"请输入新的数学成绩: "< cin>>mat; cout<<"请输入新的语文成绩: "< cin>>chin; cout<<"请输入新的外语成绩: "< cin>>eng; s[h]->chinese=chin; s[h]->math=mat; s[h]->english=eng; cout<<"数据修改成功! "; } } if(flag2==0) { cout<<"您要修改的学生本来就不存在! 请检查重新输入 ! "< } cout<<"想继续修改吗(y/n)"< cin>>c; if(c! ='y'&&c! ='n') { cout<<"指令错误! 请重新输入! "< cin>>c; } }while(c=='y'); break; } case'6': { cout<<"本系统所有学生数据如下: "< if(i==0) cout<<"管理系统中没有录入数据或者数据已经被删除! "< for(intk=0;k { cout< "<<""< "语文: "<<""< "<<""< [k]->math <<"外语: "<<""< "<<""<< (*s[k]).getsum() <<"平均分: "<<""<<(*s[k]).getaver()< } break; } case'7': { intt;stub; cout<<"本系统所以学生排名如下: "< for(intx=0;x { t=x; for(inty=x+1;y { if((s[t]->getsum())<(s[y]->getsum())) t=y; if(t! =x) { b=*s[x]; *s[x]=*s[t]; *s[t]=b; } } } if(i==0) cout<<"管理系统中没有录入数据或者数据已经 被删除! "; for(intk=0;k { cout< "<<""< "语文: "<<""< "<<""< [k]->math <<"外语: "<<""< "<<""< [k]->getsum() <<"平均分: "<<""< } break; } case'8': { intt;stub; cout<<"本系统所以学生语文排名如下: "< for(intx=0;x { t=x; for(inty=x+1;y { if((s[t]->chinese)<(s[y]->chinese)) t=y; if(t! =x) { b=*s[t]; *s[t]=*s[x]; *s[x]=b; } } } if(i==0) cout<<"管理系统中没有录入数据或者数据已经 被删除! "; for(intk=0;k { cout< "<<""< "语文: "<<""< "<<""< [k]->math <<"外语: "<<""< "<<""< [k]->getsum() <<"平均分: "<<""< } break; } case'9': { intt;stub; cout<<"本系统所以学生数学排名如下: "< for(intx=0;x { t=x; for(inty=x+1;y { if((s[t]->math)<(s[y]->math)) t=y; if(t! =x) { b=*s[t]; *s[t]=*s[x]; *s[x]=b; } } } if(i==0) cout<<"管理系统中没有录入数据或者数据已经 被删除! "; for(intk=0;k { cout< "<<""< "语文: "<<""< "<<""< [k]->math <<"外语: "<<""< "<<""< [k]->getsum() <<"平均分: "<<""< } break; } case'y': { intt;stub; cout<<"本系统所以学生英语排名如下: "< for(intx=0;x { t=x; for(inty=x+1;y { if((s[t]->english)<(s[y]->english)) t=y; if(t! =x) { b=*s[t]; *s[t]=*s[x]; *s[x]=b; } } } if(i==0) cout<<"管理系统中没有录入数据或者数据已经 被删除! "; for(intk=0;k { cout< "<<""< "语文: "<<""< "<<""< [k]->math <<"外语: "<<""< "<<""< [k]->getsum() <<"平均分: "<<""< } } break; } cout<<"您想继续进行其他操作吗? (y/n)"< boolflag4=0; do { cin>>w; if(w! ='y'&&w! ='n') cout<<"指令错误! 请重新输入! "< else flag4=1; }while(flag4==0); if(w=='y') cout<<"请输入操作代码(0录入/4按总分查询/5按姓名查询/1增加人员/2 删除人员/3修改数据/6显示所有成员数据/7按总分排名/8按语文排名/9按数学排名/y按英语排 名)"< cin>>p; }while(w=='y'); for(intx=0;x { deletes[x]; cout<<"deleteallmembers! "< } }name<<chinese<<"数学:english<<"总分:name<<chinese<<"数学:english<<"总分:getaver()<name<<chinese<<"数学:english<<"总分:getaver()<name<<chinese<<"数学:english<<"总分:getaver()<name<<chinese<<"数学:english<<"总分:getaver()<
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 成绩管理系统 源程序 C+
![提示](https://static.bdocx.com/images/bang_tan.gif)