C++机房计费管理系统

上传人:飞*** 文档编号:53058219 上传时间:2018-08-27 格式:PDF 页数:33 大小:275.30KB
返回 下载 相关 举报
C++机房计费管理系统_第1页
第1页 / 共33页
C++机房计费管理系统_第2页
第2页 / 共33页
C++机房计费管理系统_第3页
第3页 / 共33页
C++机房计费管理系统_第4页
第4页 / 共33页
C++机房计费管理系统_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《C++机房计费管理系统》由会员分享,可在线阅读,更多相关《C++机房计费管理系统(33页珍藏版)》请在金锄头文库上搜索。

1、1 目录一、需求分析 2 二、概要设计 2 三、详细设计 4 四、调试分析. 17 五、用户手册. 17 六、测试数据. 18 七、附录. 20 2 一、需求分析1.输入功能:输入 30 名学生的学号、班级、姓名、上机起始时间。2.计算功能:计算每个下机学生的上机费用,每小时1 元。 (上机费用 =上机时间 * 1.0/h ,不足一小时按一小时计算)3.查询功能:按条件(班级、学号、姓名)显示学生的上机时间。4.机器使用情况的显示(显示方式不限但要一目了然)5.要求:1)源文件采用多文件的工程结构;2)数据存储采用文件形式;3)采用面向对象方法设计;4)功能完善,适当的注释;5)关于文件的内容

2、需要自学;二、概要设计1.学生类的定义:Student( 学生类 )int tag; /删除标记char name20; 学生姓名int cla; 班级int stunum; 学号int comnum; 上机号time_t stime; 开始上机时间time_t otime; 下机时间double htime; 上机总时间int money; 上机费用Student(); 构造函数Void upcom(char Name20,int Cla,int Stunum,int Comnum); 上 机操作int downcom(); 下机操作void delstu(); 删除操作void setot

3、ime(); 设置下机时间time_t gettime(); 获取当前时间char* getname(); 获取姓名int getcla(); 获取班级号int gettag(); 获取标记int getstunum(); 获取学号int getcomnum(); 获取上机号double countht(); 计算上机时间int countm(); 计算上机费用void disp(); 显示void disp2(); 显示 23 2.学生库类定义:StuData( 学生库类 )int top;学生记录指针Student studentMAXS ;学生记录StuData(); 构造函数Stude

4、nt* searchnum(int Stunum) ;按学号搜索学生Student* searchcla(int Cla);按 班级搜索学生void dispbycla(int Cla);按班级显示学生Student*searchname(char *Name); 按姓名显示学生void dispall();显示所有学生信息void upcom(char Name20,int Cla,int Stunum,int Comnum);上机操作void downcom(int Stunum);下机操作int search(); 搜索操作StuData(); 析构函数3.电脑类的定义:Computer

5、(电脑类 ) int tag;删除标记int comnum; 电脑号Computer(); 构造函数void setcomnum(int Comnum);设置电脑号int getcomnum();获取电脑号void upcom();上机操作 void downcom(); 下机操作int gettag();获取标记4 4.电脑库类的定义:ComData(电脑库类 ) Computer computer30;记录电 脑ComData();构造函数Computer* searchcom();搜索空闲电脑 Computer* searchnum(int Comnum); 按电脑号搜索int upco

6、m();上机操作 void disp();显示ComData();析构函数三、详细设计1. 学生类成员函数的定义:Student:Student() /构造函数 void Student:upcom(char Name20,int Cla,int Stunum,int Comnum) /上机 strcpy(name,Name); tag=1; cla=Cla; stunum=Stunum; comnum=Comnum; stime=gettime(); int Student:downcom() /下机 5 /otime=gettime(); setotime(); delstu(); dis

7、p(); return comnum; void Student:delstu() /更改上机标记 tag=0; void Student:setotime() /获取下机时间 otime=gettime(); time_t Student:gettime() /获取当前时间 return time(NULL); char* Student:getname() /获取姓名 return name; int Student:getcla() /获取班级 6 return cla; int Student:gettag() /获取上机标记 return tag; int Student:getst

8、unum() /获取学号 return stunum; int Student:getcomnum() /获取上机号 return comnum; double Student:countht() /计算总上机时间 return difftime(otime,stime); int Student:countm() /计算上机费用 if(int)countht()%3600=0) return (int)countht()/3600; return (int)countht()/3600)+1; 7 void Student:disp() /显示 coutdowncom(); int StuD

9、ata:search() /机房学生查询 char choice; char name20; int stunum; int cla; Student *s; while(choice!=0) coutchoice; switch(choice) case 1: system(“cls“); coutname; s=searchname(name); if(s=NULL) coutdisp(); break; case 2: system(“cls“); coutstunum; s=searchnum(stunum); if(s=NULL) coutdisp(); break; case 3:

10、 system(“cls“); coutcla; s=searchcla(cla); if(s=NULL) coutupcom(); return p-getcomnum(); void ComData:disp() /显示 cout #include #include #include Student:Student() /构造函数 void Student:upcom(char Name20,int Cla,int Stunum,int Comnum) /上机 strcpy(name,Name); tag=1; cla=Cla; stunum=Stunum; comnum=Comnum;

11、stime=gettime(); int Student:downcom() /下机 /otime=gettime(); setotime(); delstu(); disp(); return comnum; void Student:delstu() /更改上机标记 tag=0; void Student:setotime() /获取下机时间 otime=gettime(); 24 time_t Student:gettime() /获取当前时间 return time(NULL); char* Student:getname() /获取姓名 return name; int Studen

12、t:getcla() /获取班级 return cla; int Student:gettag() /获取上机标记 return tag; int Student:getstunum() /获取学号 return stunum; int Student:getcomnum() /获取上机号 return comnum; double Student:countht() /计算总上机时间 return difftime(otime,stime); int Student:countm() /计算上机费用 if(int)countht()%3600=0) return (int)countht()

13、/3600; return (int)countht()/3600)+1; void Student:disp() /显示 25 cout #include“StuData.h“ #include“Student.h“ #include #include #include #include StuData:StuData() /构造函数 Student s; top=-1; ifstream fin(“student.txt“); while(1) fin.read(char *) if(!fin) break; top+; studenttop=s; fin.close(); Student

14、* StuData:searchnum(int Stunum) /按学号搜索 for(int i=0;idowncom(); int StuData:search() /机房学生查询 char choice; char name20; int stunum; int cla; Student *s; while(choice!=0) coutchoice; switch(choice) case 1: system(“cls“); coutname; s=searchname(name); if(s=NULL) coutdisp(); break; case 2: system(“cls“);

15、 coutstunum; s=searchnum(stunum); if(s=NULL) coutdisp(); break; case 3: system(“cls“); coutcla; s=searchcla(cla); if(s=NULL) cout #include #include ComData:ComData() /构造函数 Computer c; /*for(int i=0;iupcom(); return p-getcomnum(); void ComData:disp() /显示 cout #include #include #include #include“Student.h“ #include“StuData.h“ #include“Computer.h“ #include“ComData.h“ int main() char choice; char name20; int stunum; int cla; StuData StudentD; 32 Student *s; ComData ComputerD; Computer *c; while(choice!=

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

当前位置:首页 > 商业/管理/HR > 其它文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号