学生信息管理系统C版本和 C++版本.docx
- 文档编号:16351146
- 上传时间:2023-07-12
- 格式:DOCX
- 页数:16
- 大小:16.57KB
学生信息管理系统C版本和 C++版本.docx
《学生信息管理系统C版本和 C++版本.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统C版本和 C++版本.docx(16页珍藏版)》请在冰点文库上搜索。
学生信息管理系统C版本和C++版本
//C语言版本学生信息管理系统
//后面是C++版本学生信息管理系统
#include
#include
#include
usingnamespacestd;
#defineMAXN3000
classStu
{
public:
charnumber[100];
charname[100];
doublex,y,z;
doublesum;
//voidSetName();
//voidSetNumber();
//voidSetXYZ();
voidSetInfo();
intGetSum();
voidGetInfo();
//...........
};
voidStu:
:
GetInfo()
{
GetSum();
puts("------------------------------------------");
printf("学号:
%s姓名:
%s语文:
%.1lf数学:
%.1lf英语:
%.1lf总分:
%.1lf\n",number,name,x,y,z,sum);
puts("------------------------------------------");
}
intStu:
:
GetSum()
{
return(sum=x+y+z);
}
voidStu:
:
SetInfo()
{
printf("学号:
");
scanf("%s",number);
printf("姓名:
");
scanf("%s",name);
printf("语文成绩:
");
scanf("%lf",&x);
printf("数学成绩:
");
scanf("%lf",&y);
printf("她妹的英语:
");
scanf("%lf",&z);
}
boolcmp_x(Stu*a,Stu*b)
{
returna->x>b->x;
};
boolcmp_y(Stu*a,Stu*b)
{
returna->y>b->y;
}
boolcmp_z(Stu*a,Stu*b)
{
returna->z>b->z;
}
boolcmp_sum(Stu*a,Stu*b)
{
returna->sum>b->sum;
}
boolInsert();
boolDelete();
boolChange();
boolSort();
boolClaculate();
intFind();
intFindAsk();
Stus[MAXN];
Stu*p[MAXN];
boolflag[MAXN];
intcnt=0;
boolInsert()
{
if(cnt>MAXN)
{
printf("通讯录满了\n");
returnfalse;
}
inti;
for(i=0;i p[cnt]=&s[i]; flag[i]=true; p[cnt]->SetInfo(); cnt++; returntrue; } boolSort() { if(cnt==0) { printf("当前通讯录空\n"); returnfalse; } charx='k'; printf("1--按语文的成绩排序\n"); printf("2--按数学的成绩排序\n"); printf("3--按英语的成绩排序\n"); printf("0--按总的成绩排序\n"); x=getchar(); while((x=='\n'||x==''||x=='\0'))x=getchar(); switch(x) { case'1': {sort(p,p+cnt,cmp_x);break;} case'2': {sort(p,p+cnt,cmp_y);break;} case'3': {sort(p,p+cnt,cmp_z);break;} case'4': {sort(p,p+cnt,cmp_sum);break;} default: {x='|';break;} } if(x! ='|') for(inti=0;i { p[i]->GetInfo(); } returntrue; } boolDelete() { inti; if((i=Find())! =-1) { for(intj=i;j p[j]=p[j+1]; --cnt; flag[i]=false; returntrue; } returnfalse; } boolChange() { inti; if((i=Find())! =-1) { p[i]->SetInfo(); returntrue; } returnfalse; } boolClaculate() { inti; if((i=Find())! =-1) { printf("------------------------------------------\n"); printf("总分: %lf\n",p[i]->GetSum()); printf("------------------------------------------\n"); returntrue; } returnfalse; } intFind() { chara[1000]; printf("学号: "); scanf("%s",a); inti; for(i=0;i if(i>=cnt) { puts("查无此人"); return-1; } returni; } intFindAsk() { inti; if((i=Find())! =-1) { p[i]->GetInfo(); returntrue; } returnfalse; } intmain() { memset(s,NULL,sizeof(s)); memset(flag,false,sizeof(flag)); charx=0; while(x! ='6') { printf("1--输入\t2--修改\t3--计算"); puts("\t4--排序\t5--查询\t6--退出"); puts("----------------------------------------------------------"); x=getchar(); while((x=='\n'||x==''||x=='\0'))x=getchar(); switch(x) { case'1': {Insert();break;} case'2': {Change();break;} case'3': {Claculate();break;} case'4': {Sort();break;} case'5': {FindAsk();break;} case'6': {break;} case'7': {Delete();break;} default: {break;} } } return0; } /* //C++版本学生信息管理系统 #include #include #include usingnamespacestd; #defineMAXN3000 classStu { public: stringnumber; stringname; intx,y,z; intsum; //voidSetName(); //voidSetNumber(); //voidSetXYZ(); voidSetInfo(); intGetSum(); voidGetInfo(); //........... }; voidStu: : GetInfo() { GetSum(); cout<<"------------------------------------------"< cout<<"学号: "< "< "< "< "< "< cout<<"------------------------------------------"< } intStu: : GetSum() { return(sum=x+y+z); } voidStu: : SetInfo() { cout<<"学号: "; cin>>number; cout<<"姓名: "; cin>>name; cout<<"语文成绩: "; cin>>x; cout<<"数学成绩: "; cin>>y; cout<<"她妹的英语: "; cin>>z; } boolcmp_x(Stu*a,Stu*b) { returna->x>b->x; }; boolcmp_y(Stu*a,Stu*b) { returna->y>b->y; } boolcmp_z(Stu*a,Stu*b) { returna->z>b->z; } boolcmp_sum(Stu*a,Stu*b) { returna->sum>b->sum; } boolInsert(); boolDelete(); boolChange(); boolSort(); boolClaculate(); intFind(); intFindAsk(); Stus[MAXN]; Stu*p[MAXN]; boolflag[MAXN]; intcnt=0; boolInsert() { if(cnt>MAXN) { cout<<"通讯录满了"< returnfalse; } inti; for(i=0;i p[cnt]=&s[i]; flag[i]=true; p[cnt]->SetInfo(); cnt++; returntrue; } boolSort() { if(cnt==0) { cout<<"空"< returnfalse; } charx='k'; cout<<"1--按语文的成绩排序"< cout<<"2--按数学的成绩排序"< cout<<"3--按英语的成绩排序"< cout<<"0--按总的成绩排序"< cin>>x; switch(x) { case'1': {sort(p,p+cnt,cmp_x);break;} case'2': {sort(p,p+cnt,cmp_y);break;} case'3': {sort(p,p+cnt,cmp_z);break;} case'4': {sort(p,p+cnt,cmp_sum);break;} default: {x='|';break;} } if(x! ='|') for(inti=0;i { p[i]->GetInfo(); } returntrue; } boolDelete() { inti; if((i=Find())! =-1) { for(intj=i;j p[j]=p[j+1]; --cnt; flag[i]=false; returntrue; } returnfalse; } boolChange() { inti; if((i=Find())! =-1) { p[i]->SetInfo(); returntrue; } returnfalse; } boolClaculate() { inti; if((i=Find())! =-1) { cout<<"------------------------------------------"< cout<<"总分: "< GetSum()< cout<<"------------------------------------------"< returntrue; } returnfalse; } intFind() { stringa; cout<<"学号: "< cin>>a; inti; for(i=0;i =a);i++); if(i>=cnt) { cout<<"查无此人"< return-1; } returni; } intFindAsk() { inti; if((i=Find())! =-1) { p[i]->GetInfo(); returntrue; } returnfalse; } intmain() { memset(s,NULL,sizeof(s)); memset(flag,false,sizeof(flag)); charx=0; while(x! ='6') { cout<<"1--输入\t2--修改\t3--计算"; cout<<"\t4--排序\t5--查询\t6--退出"< cout<<"----------------------------------------------------------"< cin>>x; switch(x) { case'1': {Insert();break;} case'2': {Change();break;} case'3': {Claculate();break;} case'4': {Sort();break;} case'5': {FindAsk();break;} case'6': {break;} case'7': {Delete();break;} default: {break;} } } return0; } */
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生信息管理系统 C版本 C+版本 学生 信息管理 系统 版本 C+