学生成绩管理系统C++Word格式.docx
- 文档编号:16581798
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:6
- 大小:19.63KB
学生成绩管理系统C++Word格式.docx
《学生成绩管理系统C++Word格式.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统C++Word格式.docx(6页珍藏版)》请在冰豆网上搜索。
intchoose;
intn;
classStudent{public:
intnum;
stringname;
intbj;
charsex;
floatMath;
floatEnglish;
floatCjj;
floatsum;
floataverage;
};
Studentstud[100];
//读取资料voidread(){charfilename[20];
cout从文件中读取信息!
endl;
cout请输入文件名:
endl;
cinfilename;
ifstreaminfile(filename,ios:
:
in|ios:
out);
//定义输入文件流对象,以输出方式打开用户自定义的磁盘文件9if(!
infile){cerropenerror!
exit
(1);
}//输出出错信息do{inti=0;
infilestud[i].numstud[i].namestud[i].sexstud[i].bj;
//从磁盘读取学生的信息infilestud[i].Mathstud[i].Englishstud[i].Cjj;
cout学生的学号:
stud[i].num//向显示器输出学生的信息姓名:
stud[i].name性别:
stud[i].sex班级:
stud[i].bj高数成绩:
stud[i].Math大学英语成绩:
stud[i].EnglishC++成绩:
stud[i].Cjjendl;
i++;
}while(!
infile.eof());
//判断是否为文件尾infile.close();
cout读取成功!
}//保存资料voidsave(){inti;
charfilename[20];
for(i=0;
in;
i++){cout学生的学号:
stud[i].num姓名:
}cout将记录保存在文件夹!
;
ofstreamoutfile(filename);
if(!
outfile){cerropenerror!
}for(i=0;
i++){outfilestud[i].numstud[i].namestud[i].bj;
outfilestud[i].Mathstud[i].Englishstud[i].Cjj;
}outfile.close();
cout保存成功!
}//输入资料voidSR(){cout请根据你的需要输入学生的个数:
cinn;
for(inta=0;
an;
a++)stud[i].sex10{cout请输入第a+1个学生资料:
cout学号:
‘‘;
cinstud[a].num;
cout姓名:
cinstud[a].name;
cout性别:
cinstud[a].sex;
cout班级:
cinstud[a].bj;
cout高数成绩:
cinstud[a].Math;
cout大学英语成绩:
cinstud[a].English;
coutC++成绩:
cinstud[a].Cjj;
stud[a].sum=stud[a].Math+stud[a].English+stud[a].Cjj;
stud[a].average=(stud[a].Math+stud[a].English+stud[a].Cjj)/3;
}cout输入成功,学生资料是否保存?
(y/n)endl;
cinpress;
switch(press){case‘y’:
save();
break;
default:
cout不保存!
;
}}//删除资料voidSC(){do{stringSC_name;
cout请输入你要删除的学生名字:
inti=0;
cinSC_name;
while(stud[i].name!
=SC_namein)i++;
//查找判断if(stud[i].name==SC_name){for(intj=i;
jn-1;
j++){stud[i].num=stud[i+1].num;
stud[i].name=stud[i+1].name;
stud[i].sex=stud[i+1].sex;
stud[i].bj=stud[i+1].bj;
stud[i].Math=stud[i+1].Math;
stud[i].English=stud[i+1].English;
stud[i].Cjj=stud[i+1].Cjj;
}cout删除成功!
n=n-1;
}elseif(i==n){coutcan’tfindthisnameendl;
cout该信息不存在,无法删除!
}cout(是否继(y/n))endl;
}while(press==‘y’||press==‘Y’);
}//添加资料voidTJ(){do{cout请添加新的学生信息endl;
cout新的学生学号:
cinstud[n].num;
cout新学生姓名:
cinstud[n].name;
cout新学生性别:
cinstud[n].sex;
cout新学生班级:
cinstud[n].bj;
cout新学生的高数成绩:
cinstud[n].Math;
cout新学生的大学英语成绩:
cinstud[n].English;
cout新学生的C++成绩:
cinstud[n].Cjj;
stud[n].sum=stud[n].Math+stud[n].English+stud[n].Cjj;
stud[n].average=(stud[n].Math+stud[n].English+stud[n].Cjj)/3;
n++;
续操作?
11cout(是否继续操作?
(y/n))endl;
cout添加成功,学生资料是否保存?
}}//修改资料voidXG(){begin:
stringfind_name;
inti;
cout请输入你要修改的学生名字:
cinfind_name;
i++)if(stud[i].name==find_name){coutstud[i].namehasbeenfound:
stud[i].num’‘姓名:
stud[i].name’‘性别:
stud[i].sex’‘班级:
stud[i].bj’‘高数成绩:
stud[i].Math’‘大学英语成绩:
stud[i].English’‘C++成绩:
}if(stud[i].name!
=find_name){coutcan’tfindthisnameendl;
cout请重新查找!
gotobegin;
}for(intj=0;
jn;
j++){cout请输入新的信息:
cinstud[j].num;
cinstud[j].name;
cinstud[j].sex;
cinstud[j].bj;
cinstud[j].Math;
cinstud[j].English;
cinstud[j].Cjj;
stud[i].num=stud[j].num;
stud[i].name=stud[j].name;
stud[i].sex=stud[j].sex;
stud[i].bj=stud[j].bj;
stud[i].Math=stud[j].Math;
stud[i].English=stud[j].English;
stud[i].Cjj=stud[j].Cjj;
}cout修改成功,是否保存?
cout存!
}}//按总分排名voidzf(){intm,t;
stringna;
floatz,h,e,c,p;
chars;
for(intj=0;
j++)//选择法排序for(inti=0;
in-1-j;
i++)//以下的按各单科成绩和平均分也是运用选择不保12法排序if(stud[i].sumstud[i+1].sum){m=stud[i].num;
stud[i].num=stud[i+1].num;
stud[i+1].num=m;
na=stud[i].name;
stud[i+1].name=na;
s=stud[i].sex;
stud[i+1].sex=s;
t=stud[i].bj;
stud[i+1].bj=t;
h=stud[i].Math;
stud[i+1].Math=h;
e=stud[i].English;
stud[i+1].English=e;
c=stud[i].Cjj;
stud[i+1].Cjj=c;
z=stud[i].sum;
stud[i].sum=stud[i+1].sum;
stud[i+1].sum=z;
p=stud[i].average;
stud[i+1].average=p;
}cout学生按总分排名:
cout学号’‘姓名’‘性别’‘班级’‘总分endl;
for(inti=0;
i++){coutstud[i].numstud[i].namestud[i].sexstud[i].bjstud[i].sumendl;
coutendl;
}}//按高数分数排名voidgs(){intg,t;
j++)for(inti=0;
i++)if(stud[i].Mathstud[i+1].Math){g=stud[i].num;
stud[i+1].num=g;
}cout学生按高数分数排名:
cout学号’‘姓名’‘性别’‘班级’‘高数分数endl;
i++){coutstud[i].numstud[i].namestud[i].sexstud[i].English=stud[i+1].English;
stud[i].average=stud[i+1].average;
13//按英语分数排名voidyy(){intg,t;
i++)if(stud[i].Englishstud[i+1].English){g=stud[i].num;
}cout学生按英语分数排名:
cout学号’‘姓名’‘性别’‘班级’‘英语分数endl;
i++){coutstud[i].numstud[i].namestud[i].sexstud[i].bjstud[i].Englishendl;
}}//按C++分数排名voidcy(){intg,t;
i++)if(stud[i].Cjjstud[i+1].Cjj){g=stud[i].num;
stud[i].bjstud[i].Mathendl;
}}stud[i].num=stud[i+1].num;
14t=stud[i].bj;
}cout学生按C++分数排名:
cout学号’‘姓名’‘性别’‘班级’‘C++分数endl;
i++){coutstud[i].numstud[i].namestud[i].sexstud[i].bjstud[i].Cjjendl;
}}//计算最高总分voidmax_student(){floatmax;
max=stud[0].sum;
j++){if(stud[j].summax)max=stud[j].sum;
}cout最高总分为:
maxendl;
}//计算最低总分voidmin_student(){floatmin;
min=stud[0].sum;
j++){if(stud[j].summin)min=stud[j].sum;
}cout最低总分为:
minendl;
}//按平均分排名voidaver(){floatz,h,e,c,p;
intm,b;
i++)if(stud[i].averagestud[i+1].average){m=stud[i].num;
stud[i+1].sex
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 成绩管理系统 C+