1、C+学籍管理系统 C+学生学籍管理系统1、基本要求:为方便管理一个班同学的学籍,编写一个学籍管理系统软件。系统记录必须包括学生姓名、学号、数学、物理、化学、英语、网络等课程成绩。2、基本管理功能:(1)添加:增加一个同学的记录到管理系统中。(2)查询:可以根据姓名或学号查找某人的相关信息,若找到则显示其信息。(3)修改:在管理系统中修改一个同学的记录。(4)保存:将所有学生学籍信息保存在一个文件中(数据库文件或普通的文本文件)。(5)读取:从文件中读取已保存了数据。(6)删除:从管理系统中删除一条记录。(7)恢复:能恢复被删除的记录。(8)统计:(A)计算各门课程全班平均成绩及总成绩;(B)
2、统计其课程全班得:100分、 9099分、8089分、7079分、6069分、59分以下学生人数及全班总人数的百分比;(C)以表格形式打印全部学生的平均成绩(包括各课总的平均成绩)。(9)其他:可以根据自己的思路设计其他功能。PS:我们报告是手写的,所以报告没有弄上来,不过源程序大家可以看一下,下面是运行的界面剩下的功能大家自己试吧,这里就不截图了。源程序:(头文件#include stdafx.h和主函数int main(int argc, char* argv) 是建工程时自带的,把之前的清掉后直接复制即可)#include stdafx.h#include#include#include
3、#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 save_data(); /*保存文件*/void read_data(); /*读取文件
4、*/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 void set_massage(int m,Student j);/*友元函数*/frie
5、nd 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 set_number();friend void set_point();frien
6、d 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; /*性别*/ double eva; /*学习水平*/ double shuxue;
7、 /*数学成绩*/ 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+wuli+huaxue+yingyu+wangluo)/5;void set_mass
8、age(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个学生的信息endl; cout姓名 学号 性别 数学成绩 物理成绩 化学成绩 英语成绩
9、网络成绩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.numjm-1.sexjm-1.shuxuejm-1.wulijm-1.huax
10、uejm-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)setiosflags(ios:left)setiosflags(ios:fixed
11、)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)setiosflags(ios:fixed)setprecision(0)ji.sex;cou
12、t;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)setprecision(0)ji.huaxue;cout;cout setfill(0)
13、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);cout1.按姓名查找endl2.按学号查找endl3.输出所有学生信息endl4.返回主
14、菜单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:coutendlendlendlendlendlendlendlendlendlendlendl 错误指令!按任意键返回。endl;getch();break;void se
15、arch_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; coutsetfill(0)setw(10)setiosflags(ios:
16、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;cout; cout setfill(0)setw(3)setiosflags(io
17、s: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 _endl; cout 序号 姓 名 学 号 性别数学物理化学英语网络endl;
18、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 setfill(0)setw(3)setiosflags(ios:left)studi.sh
19、uxue;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; coutn; cout _ endl; flag=true; break;if(fl
20、ag=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+; numberef=t; for(e=3,f=0,t=0,i=0;in;i+) if
21、(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+; numberef=t; for(e=3,f=1,t=0,i=0;i=90&stu
22、di.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; 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=
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1