C++学籍管理系统.doc

上传人:豆**** 文档编号:33428462 上传时间:2022-08-11 格式:DOC 页数:18 大小:88KB
返回 下载 相关 举报
C++学籍管理系统.doc_第1页
第1页 / 共18页
C++学籍管理系统.doc_第2页
第2页 / 共18页
点击查看更多>>
资源描述

《C++学籍管理系统.doc》由会员分享,可在线阅读,更多相关《C++学籍管理系统.doc(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、如有侵权,请联系网站删除,仅供学习与交流C+学籍管理系统【精品文档】第 18 页 C+学生学籍管理系统1、 基本要求:为方便管理一个班同学的学籍,编写一个学籍管理系统软件。系统记录必须包括学生姓名、学号、数学、物理、化学、英语、网络等课程成绩。2、 基本管理功能:(1) 添加:增加一个同学的记录到管理系统中。(2) 查询:可以根据姓名或学号查找某人的相关信息,若找到则显示其信息。(3) 修改:在管理系统中修改一个同学的记录。(4) 保存:将所有学生学籍信息保存在一个文件中(数据库文件或普通的文本文件)。(5) 读取:从文件中读取已保存了数据。(6) 删除:从管理系统中删除一条记录。(7) 恢复

2、:能恢复被删除的记录。(8) 统计:(A)计算各门课程全班平均成绩及总成绩;(B) 统计其课程全班得:100分、 9099分、8089分、7079分、6069分、59分以下学生人数及全班总人数的百分比;(C)以表格形式打印全部学生的平均成绩(包括各课总的平均成绩)。(9) 其他:可以根据自己的思路设计其他功能。PS:我们报告是手写的,所以报告没有弄上来,不过源程序大家可以看一下,下面是运行的界面剩下的功能大家自己试吧,这里就不截图了。源程序:(头文件#include stdafx.h和主函数int main(int argc, char* argv) 是建工程时自带的,把之前的清掉后直接复制即

3、可)#include stdafx.h#include#include#include#include#include#include#includeusing namespace std;int n=0,u=0;int number56=0,0,0,0,0; /各门学科分段成绩的人数double point56=0,0,0,0,0;double eva5=0,0,0,0,0;string find_name;string find_num;int p;void search(string);void search(int);void cunqu_data(); /*存取文件*/void sa

4、ve_data(); /*保存文件*/void read_data(); /*读取文件*/void renew_data(); /*删除恢复*/void delete_data(int m); /*删除记录*/void recover_data(); /*恢复记录*/void set_eva2(); /*课程的平均成绩*/void put_result1();void put_result2();void put_result3();class Student /*定义一个Student类*/public:Student(); /*构造函数*/void set_eva();friend voi

5、d set_massage(int m,Student j);/*友元函数*/friend void add_massage(int m,Student j);/*友元函数*/friend void put_massage(int m,Student j);friend void change_data(int m,Student j);/*修改学生信息*/friend void search_data(); /*查找学生信息*/friend void search_name(string name);friend void search_num(string num);friend void

6、 set_number();friend void set_point();friend void save_data(); /*保存文件*/friend void read_data(); /*读取文件*/friend void delete_data(int m); /*删除记录*/friend void recover_data(); /*恢复记录*/friend void set_eva2(); /*课程的平均成绩*/friend void put_result1();private: string name; /*姓名*/ string num; /*学号*/string sex;

7、/*性别*/double eva; /*学习水平*/ double shuxue; /*数学成绩*/ double wuli; /*物理成绩*/ double huaxue; /*化学成绩*/ double yingyu; /*英语成绩*/ double wangluo; /*网络成绩*/stud200,studl200;Student:Student() /*定义构造函数*/name=wu;num=wu;sex=wu;shuxue=0;wuli=0;huaxue=0;yingyu=0;wangluo=0;void Student:set_eva() /计算平均成绩eva=(shuxue+wu

8、li+huaxue+yingyu+wangluo)/5;void set_massage(int m,Student j)int i;for(i=0;im;i+) cout输入第i+1个学生的信息endl; cout姓名 学号 性别 数学成绩 物理成绩 化学成绩 英语成绩 网络成绩ji.nameji.numji.sexji.shuxueji.wuliji.huaxueji.yingyuji.wangluo;coutn;system(cls);void add_massage(int m,Student j)/增加学生信息int i;for(i=n;in+m;i+) cout输入第i+1个学生的

9、信息endl; cout姓名 学号 性别 数学成绩 物理成绩 化学成绩 英语成绩 网络成绩ji.nameji.numji.sexji.shuxueji.wuliji.huaxueji.yingyuji.wangluo;system(cls);n=n+m;void change_data(int m,Student j)/修改学生信息if(m=0|mn)cout输入错误!endl;getch(); else coutendl; cout 输入该同学的新学籍信息endl; cout _ endl; cout姓名 学号 性别 数学成绩 物理成绩 化学成绩 英语成绩 网络成绩jm-1.namejm-1

10、.numjm-1.sexjm-1.shuxuejm-1.wulijm-1.huaxuejm-1.yingyujm-1.wangluo; system(cls); coutendlendlendlendlendlendlendlendlendlendlendl 修改成功_,按任意键返回主菜单。endl;getch();void put_massage(int m,Student j)int i;cout _ endl; cout 序号 姓 名 学 号 性别数学物理化学英语网络endl;cout -endl; for(i=0;im;i+) cout ;cout setfill(0)setw(3)s

11、etiosflags(ios:left)setiosflags(ios:fixed)setprecision(0)i+1;cout;cout setfill(0)setw(7)setiosflags(ios:left)setiosflags(ios:fixed)setprecision(0)ji.name;cout;coutsetfill(0)setw(10)setiosflags(ios:left)setiosflags(ios:fixed)setprecision(0)ji.num;cout;cout setfill(0)setw(3)setiosflags(ios:left)setios

12、flags(ios:fixed)setprecision(0)ji.sex;cout;cout setfill(0)setw(3)setiosflags(ios:left)setiosflags(ios:fixed)setprecision(0)ji.shuxue;cout;cout setfill(0)setw(3)setiosflags(ios:left)setiosflags(ios:fixed)setprecision(0)ji.wuli;cout;cout setfill(0)setw(3)setiosflags(ios:left)setiosflags(ios:fixed)setp

13、recision(0)ji.huaxue;cout;cout setfill(0)setw(3)setiosflags(ios:left)setiosflags(ios:fixed)setprecision(0)ji.yingyu;cout;cout setfill(0)setw(3)setiosflags(ios:left)setiosflags(ios:fixed)setprecision(0)ji.wangluo;cout;coutn;cout _ endl; void search_data()/查找功能char a;for(a=0;a=0|a!=4;)system(cls);cout

14、1.按姓名查找endl2.按学号查找endl3.输出所有学生信息endl4.返回主菜单a;system(cls);switch(a) case 1:coutfind_name;search_name(find_name);break;case 2:coutfind_num;search_num(find_num);break;case 3:coutendl; cout 学生学籍信息endl; put_massage(n,stud);getch();break;case 4:break;default:coutendlendlendlendlendlendlendlendlendlendlend

15、l 错误指令!按任意键返回。endl;getch();break;void search_name(string name)/按姓名查找int i;bool flag=false;for(i=0;in;i+) if(studi.name=name) cout _endl; cout 序号 姓 名 学 号 性别数学物理化学英语网络endl; cout -endl; cout ;cout setfill(0)setw(3)setiosflags(ios:left)i+1;cout; cout setfill(0)setw(7)setiosflags(ios:left)studi.name;cout

16、; coutsetfill(0)setw(10)setiosflags(ios:left)studi.num;cout; cout setfill(0)setw(3)setiosflags(ios:left)studi.sex;cout; cout setfill(0)setw(3)setiosflags(ios:left)studi.shuxue;cout; cout setfill(0)setw(3)setiosflags(ios:left)studi.wuli;cout; cout setfill(0)setw(3)setiosflags(ios:left)studi.huaxue;co

17、ut; cout setfill(0)setw(3)setiosflags(ios:left)studi.yingyu;cout; cout setfill(0)setw(3)setiosflags(ios:left)studi.wangluo;cout; coutn; cout _ endl; flag=true; break; if(flag=false) cout对不起,暂无此学生信息; getch();void search_num(string num)/按学号查找int i;bool flag=false;for(i=0;in;i+)if(studi.num=num) cout _

18、endl; cout 序号 姓 名 学 号 性别数学物理化学英语网络endl; cout -endl; cout ;cout setfill(0)setw(3)setiosflags(ios:left)i+1;cout; cout setfill(0)setw(7)setiosflags(ios:left)studi.name;cout; coutsetfill(0)setw(10)setiosflags(ios:left)studi.num;cout; cout setfill(0)setw(3)setiosflags(ios:left)studi.sex;cout; cout setfil

19、l(0)setw(3)setiosflags(ios:left)studi.shuxue;cout; cout setfill(0)setw(3)setiosflags(ios:left)studi.wuli;cout; cout setfill(0)setw(3)setiosflags(ios:left)studi.huaxue;cout; cout setfill(0)setw(3)setiosflags(ios:left)studi.yingyu;cout; cout setfill(0)setw(3)setiosflags(ios:left)studi.wangluo;cout; co

20、utn; cout _ endl; flag=true; break;if(flag=false) cout对不起,暂无此学生信息; getch();void set_number()/number 开始 int e,f,i,t; for(e=0,f=0,t=0,i=0;in;i+) /100 if(studi.shuxue=100) t+; numberef=t; for(e=1,f=0,t=0,i=0;in;i+) if(studi.wuli=100) t+; numberef=t; for(e=2,f=0,t=0,i=0;in;i+) if(studi.huaxue=100) t+; n

21、umberef=t; for(e=3,f=0,t=0,i=0;in;i+) if(studi.yingyu=100) t+; numberef=t; for(e=4,f=0,t=0,i=0;in;i+) if(studi.wangluo=100) t+; numberef=t; for(e=0,f=1,t=0,i=0;i=90&studi.shuxue=99) t+; numberef=t; for(e=1,f=1,t=0,i=0;i=90&studi.wuli=99) t+; numberef=t; for(e=2,f=1,t=0,i=0;i=90&studi.huaxue=99) t+;

22、numberef=t; for(e=3,f=1,t=0,i=0;i=90&studi.yingyu=99) t+; numberef=t; for(e=4,f=1,t=0,i=0;i=90&studi.wangluo=99) t+; numberef=t; for(e=0,f=2,t=0,i=0;i=80&studi.shuxue=89) t+; numberef=t; for(e=1,f=2,t=0,i=0;i=80&studi.wuli=89) t+; numberef=t; for(e=2,f=2,t=0,i=0;i=80&studi.huaxue=89) t+; numberef=t;

23、 for(e=3,f=2,t=0,i=0;i=80&studi.yingyu=89) t+; numberef=t; for(e=4,f=2,t=0,i=0;i=80&studi.wangluo=89) t+; numberef=t; for(e=0,f=3,t=0,i=0;i=90&studi.shuxue=99) t+; numberef=t; for(e=1,f=3,t=0,i=0;i=70&studi.wuli=79) t+; numberef=t; for(e=2,f=3,t=0,i=0;i=70&studi.huaxue=79) t+; numberef=t; for(e=3,f=

24、3,t=0,i=0;i=70&studi.yingyu=79) t+; numberef=t; for(e=4,f=3,t=0,i=0;i=70&studi.wangluo=79) t+; numberef=t; for(e=0,f=4,t=0,i=0;i=60&studi.shuxue=69) t+; numberef=t; for(e=1,f=4,t=0,i=0;i=60&studi.wuli=69) t+; numberef=t; for(e=2,f=4,t=0,i=0;i=60&studi.huaxue=69) t+; numberef=t; for(e=3,f=4,t=0,i=0;i

25、=60&studi.yingyu=69) t+; numberef=t; for(e=4,f=4,t=0,i=0;i=60&studi.wangluo=69) t+; numberef=t; for(e=0,f=5,t=0,i=0;i=0&studi.shuxue=59) t+; numberef=t; for(e=1,f=5,t=0,i=0;i=0&studi.wuli=59) t+; numberef=t; for(e=2,f=5,t=0,i=0;i=0&studi.huaxue=59) t+; numberef=t; for(e=3,f=5,t=0,i=0;i=0&studi.yingy

26、u=59) t+; numberef=t; for(e=4,f=5,t=0,i=0;i=0&studi.wangluo=59) t+; numberef=t; void set_point() /point int e,f; for(e=0;e5;e+) for(f=0;f6;f+) pointef=numberef/(n*1.0)*100; void set_eva2() /*课程的平均成绩*/ double s;int i; for(i=0,s=0;in;i+) s=s+studi.shuxue; eva0=s/(n*1.0); for(i=0,s=0;in;i+) s=s+studi.w

27、uli; eva1=s/(n*1.0); for(i=0,s=0;in;i+) s=s+studi.huaxue; eva2=s/(n*1.0); for(i=0,s=0;in;i+) s=s+studi.yingyu; eva3=s/(n*1.0); for(i=0,s=0;in;i+) s=s+studi.wangluo; eva4=s/(n*1.0);void put_result() /输出统计结果char g;for(g=0;g=0|g!=4;)system(cls);cout1.查询每位学生的总平均分endl2.查询各课的成绩分布及平均成绩endl3.查询各段成绩所占的百分比end

28、l4.返回主菜单g;system(cls);switch(g)case 1:put_result1();getch();break; case 2:put_result2();getch();break; case 3:put_result3();getch();break; case 4:break; default:coutendlendlendlendlendlendlendlendlendlendlendl 错误指令!按任意键返回。endl;getch();break;void put_result1()/每位学生的总平均分int e; cout 学生的总平均分 endl; cout

29、_endl; cout 姓 名平均成绩endl; cout -endl; for(e=0;en;e+) cout ;coutsetfill(0)setw(6)setiosflags(ios:right)stude.name ;coutsetfill(0)setw(6)setiosflags(ios:right)stude.eva endl; cout _endl;void put_result2() /输出统计结果2int e,f; cout 各课的成绩分布及平均成绩 endl; cout _endl; cout 课 程 100 909980897079606960以下平均分endl; cou

30、t -endl; cout ;cout数 学;for(e=0,f=0;f6;f+)coutsetfill(0)setw(4)setiosflags(ios:right)numberef ;cout setfill(0)setw(5)setiosflags(ios:left)setiosflags(ios:fixed)setprecision(1)eva0endl; cout ;cout物 理;for(e=1,f=0;f6;f+)coutsetfill(0)setw(4)setiosflags(ios:right)numberef ;cout setfill(0)setw(5)setiosfla

31、gs(ios:left)setiosflags(ios:fixed)setprecision(1)eva1endl; cout ;cout化 学;for(e=2,f=0;f6;f+)coutsetfill(0)setw(4)setiosflags(ios:right)numberef ;cout setfill(0)setw(5)setiosflags(ios:left)setiosflags(ios:fixed)setprecision(1)eva2endl; cout ;cout英 语;for(e=3,f=0;f6;f+)coutsetfill(0)setw(4)setiosflags(ios:right)numberef ;cout setfill(0)setw(5)setiosflags(ios:left)setiosflags(ios:fixed)setprecision(1)eva3

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁