机房收费管理系统C程序设计报告_第1页
机房收费管理系统C程序设计报告_第2页
机房收费管理系统C程序设计报告_第3页
机房收费管理系统C程序设计报告_第4页
机房收费管理系统C程序设计报告_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上C+程序设计设计报告题目:机房收费管理系统一、实验题目 机房收费管理系统二、实验环境Visual C+ 6.0三、设计思想包括:函数分解过程、算法描述以及相应的数据流程图一、 函数分解过程1、输入功能struct lbtime int lbhour; int lbminute; int lbsecond; ; typedef struct char lbnum20; int lbbanji; int lbflag; char lbname20; struct lbtime lbstart,lbfinish; lbStudent; lbStudent lbstu50;

2、struct lbcomputer int lbf; lbStudent lbstut; lbcom30; int lbk; int lbmain_menu() char lbc; do system(cls); coutttt*机房收费管理系统*nttt1.输入学生信息nttt2.上机nttt3.下机nttt4.查询上机时间nttt5.机器使用情况显示nttt0.退出系统nttt*nttt 请选择菜单(0-5):; lbc=getchar(); while(lbc5); return(lbc-0); int lbinput(lbStudent lbstu,int lbn) int lbi=0

3、; char lbsign=0; while(lbsign!=lbn&lbsign!=lbN) getchar(); couttt 学号:; gets(lbstulbn+qhi.lbnum); coutlbstulbn+lbi.lbbanji; getchar(); couttt 姓名:; gets(lbstulbn+lbi.lbname); coutlbsign; lbstulbn+qhi.lbflag=0; lbi+; return(lbn+lbi); void lbonline(lbStudent lbstu,int lbn) char lbnum_t20,lbname_t20; int

4、 lbi,lbs; do coutlbs; while(lbs!=1&lbs!=2); getchar(); if(lbs=1) couttt 请输入姓名:; gets(lbname_t); for(lbi=0;lbilbn;lbi+) if(strcmp(lbstulbi.lbname,lbname_t)=0) break; else couttt 请输入学号:; gets(lbnum_t); for(lbi=0;lbilbn;lbi+) if(strcmp(lbstulbi.lbnum,lbnum_t)=0) break; if(lbi=lbn) couttt 信息库中暂无该生,请输入该生

5、信息再上机!n; return; else if(lbstulbi.lbflag=1) couttt 该生正在上机!n; return; else for(lbk=0;lbk30;lbk+) if(lbcomlbk.lbf=0) lbcomlbk.lbf=1; coutlbstulbi.lbstart.lbhourlbstulbi.lbstart.lbminutelbstulbi.lbstart.lbsecond; lbstulbi.lbflag=1; lbcomlbk.lbstut=lbstulbi; break; if(lbk=30) couttt 机器全部使用中,请稍后再上机!n; 2、

6、计算功能void lbcalculate(lbStudent lbstu) int lbt; struct lbtime lbtimet; if(lbstu.lbfinish.lbsecondlbstu.lbstart.lbsecond) if(lbstu.lbfinish.lbminute=0) lbstu.lbfinish.lbhour-=1; lbstu.lbfinish.lbminute=59; else lbstu.lbfinish.lbminute-=1; lbtimet.lbsecond=lbstu.lbfinish.lbsecond+60-lbstu.lbstart.lbsec

7、ond; else lbtimet.lbsecond=lbstu.lbfinish.lbsecond-lbstu.lbstart.lbsecond; if(lbstu.lbfinish.lbminutelbstu.lbstart.lbminute) lbstu.lbfinish.lbhour-=1; lbtimet.lbminute=lbstu.lbfinish.lbminute+60-lbstu.lbstart.lbminute; else lbtimet.lbminute=lbstu.lbfinish.lbminute-lbstu.lbstart.lbminute; lbtimet.lbh

8、our=lbstu.lbfinish.lbhour-lbstu.lbstart.lbhour; if(lbtimet.lbsecond=0&lbtimet.lbminute=0) lbt=lbtimet.lbhour; else lbt=lbtimet.lbhour+1; couttt 该生上机用时%d 小时,费用为%d 元n,lbt,lbt; 3、查询功能void lboffline(lbStudent lbstu,int lbn) char lbnum_t20,lbname_t20; int lbi,lbs; do coutlbs; while(lbs!=1&lbs!=2); getcha

9、r(); if(lbs=1) couttt 请输入姓名:; gets(lbname_t); for(lbi=0;qhilbn;lbi+) if(strcmp(lbstulbi.lbname,lbname_t)=0) break; else couttt 请输入学号:; gets(lbnum_t); for(lbi=0;lbilbn;lbi+) if(strcmp(lbstulbi.lbnum,lbnum_t)=0) break; if(lbi=lbn) couttt 没有这个学生!n; return; else if(lbstulbi.lbflag=0) couttt 该生未上机或已下机!n;

10、 return; else coutlbstulbi.lbfinish.lbhourlbstulbi.lbfinish.lbminutelbstulbi.lbfinish.lbsecond; lbcalculate(lbstuqhi); lbstulbi.lbflag=0; for(lbk=0;lbk3;lbk+) if(strcmp(lbcomlbk.lbstut.lbnum,lbstulbi.bnum)=0) lbcomlbk.lbf=0; break; void lbsearch(lbStudent lbstu,int lbn) char lbnum_t20,lbname_t20; in

11、t lbi,lbs; do coutlbs; while(lbs!=1&qhs!=2); getchar(); if(lbs=1) couttt 请输入姓名:; gets(lbname_t); for(lbi=0;qhilbn;lbi+) if(strcmp(lbstulbi.lbname,lbname_t)=0) break; else couttt 请输入学号:; gets(lbnum_t); for(lbi=0;qhilbn;bi+) if(strcmp(lbstulbi.lbnum,lbnum_t)=0) break; if(lbi=lbn) couttt 查无此生!n; return

12、; else if(lbstulbi.lbflag=1) couttt 该生正在上机,上机起始时间为%d:%d:%dn,lbstulbi.lbstart.lbhour,lbstulbi.lbstart.lbminute, lbstulbi.lbstart.lbsecond; else couttt 该生未上机或已下机!n; 4、机器使用情况的显示void display() coutt 机器号 是否使用 使用者 学号 班级 上机时间n; coutt-n; for(lbk=0;lbk30;lbk+) if(lbcomlbk.lbf=0) coutt%02d 否-:-:-n,qhk+1; else

13、 coutyesendl; lbcomlbk.lbstut.lbname,lbcomlbk.lbstut.lbnum,lbcomlbk.lbstut.lbbanji,lbcomlbk.lbstut.lbstart.lbhour, lbcomlbk.lbstut.lbstart.lbminute,lbcomlbk.lbstut.lbstart.lbsecond; coutt; system(pause); 1总体结构图2主函数程序流程图3子函数程序流程图 1输入学生信息 2学生上机3学生下机4上机时间查询5机器使用情况四、源程序清单包括调试过程(碰到的错误、如何错误排除)#include std

14、afx.h#include #include #include #include #include using namespace std; struct qhtime int qhhour; int lbminute; int lbsecond; ; typedef struct char lbnum20; int lbbanji; int lbflag; char lbname20; struct lbtime lbstart,lbfinish; lbStudent; lbStudent lbstu50; struct lbcomputer int lbf; lbStudent lbstu

15、t; lbcom30; int lbk; int lbmain_menu() char qhc; do system(cls); coutttt*机房收费管理系统*nttt1.输入学生信息nttt2.上机nttt3.下机nttt4.查询上机时间nttt5.机器使用情况显示nttt0.退出系统nttt*nttt 请选择菜单(0-5):; lbc=getchar(); while(lbc5); return(lbc-0); int lbinput(lbStudent lbstu,int lbn) int lbi=0; char lbsign=0; while(lbsign!=lbn&lbsign!

16、=lbN) getchar(); couttt 学号:; gets(lbstulbn+lbi.lbnum); coutlbstulbn+lbi.lbbanji; getchar(); couttt 姓名:; gets(lbstulbn+lbi.lbname); coutlbsign; lbstulbn+lbi.lbflag=0; lbi+; return(lbn+lbi); void lbonline(lbStudent lbstu,int lbn) char lbnum_t20,lbname_t20; int lbi,lbs; do coutlbs; while(lbs!=1&lbs!=2)

17、; getchar(); if(lbs=1) couttt 请输入姓名:; gets(lbname_t); for(lbi=0;lbilbn;lbi+) if(strcmp(lbstulbi.lbname,lbname_t)=0) break; else couttt 请输入学号:; gets(lbnum_t); for(lbi=0;lbilbn;lbi+) if(strcmp(lbstulbi.lbnum,lbnum_t)=0) break; if(lbi=lbn) couttt 信息库中暂无该生,请输入该生信息再上机!n; return; else if(lbstulbi.lbflag=1

18、) couttt 该生正在上机!n; return; else for(lbk=0;lbk30;lbk+) if(lbcomlbk.lbf=0) lbcomlbk.lbf=1; coutlbstulbi.lbstart.lbhourlbstulbi.lbstart.lbminutelbstulbi.lbstart.lbsecond; lbstulbi.lbflag=1; lbcomlbk.lbstut=lbstulbi; break; if(lbk=30) couttt 机器全部使用中,请稍后再上机!n; void lbcalculate(lbStudent lbstu) int lbt; s

19、truct lbtime lbtimet; if(lbstu.lbfinish.lbsecondlbstu.lbstart.lbsecond) if(lbstu.lbfinish.lbminute=0) lbstu.lbfinish.lbhour-=1; lbstu.lbfinish.lbminute=59; else lbstu.lbfinish.lbminute-=1; lbtimet.lbsecond=lbstu.lbfinish.lbsecond+60-lbstu.lbstart.lbsecond; else lbtimet.lbsecond=lbstu.lbfinish.lbseco

20、nd-lbstu.lbstart.lbsecond; if(lbstu.lbfinish.lbminutelbstu.lbstart.lbminute) lbstu.lbfinish.lbhour-=1; lbtimet.lbminute=lbstu.lbfinish.lbminute+60-lbstu.lbstart.lbminute; else lbtimet.lbminute=lbstu.lbfinish.lbminute-lbstu.lbstart.lbminute; lbtimet.lbhour=lbstu.lbfinish.lbhour-lbstu.lbstart.lbhour;

21、if(lbtimet.lbsecond=0&lbtimet.lbminute=0) lbt=lbtimet.lbhour; else lbt=lbtimet.lbhour+1; couttt 该生上机用时%d 小时,费用为%d 元n,lbt,lbt; void lboffline(lbStudent lbstu,int qhn) char lbnum_t20,lbname_t20; int lbi,lbs; do coutlbs; while(lbs!=1&lbs!=2); getchar(); if(lbs=1) couttt 请输入姓名:; gets(lbname_t); for(lbi=

22、0;lbilbn;lbi+) if(strcmp(lbstulbi.lbname,lbname_t)=0) break; else couttt 请输入学号:; gets(lbnum_t); for(lbi=0;lbilbn;lbi+) if(strcmp(lbstulbi.lbnum,lbnum_t)=0) break; if(lbi=lbn) couttt 没有这个学生!n; return; else if(lbstulbi.lbflag=0) couttt 该生未上机或已下机!n; return; else coutlbstulbi.lbfinish.lbhourlbstulbi.lbf

23、inish.lbminutelbstulbi.lbfinish.lbsecond; lbcalculate(lbstulbi); lbstulbi.lbflag=0; for(lbk=0;lbk3;lbk+) if(strcmp(lbcomlbk.lbstut.lbnum,lbstulbi.lbnum)=0) lbcomlbk.lbf=0; break; void lbsearch(lbStudent lbstu,int lbn) char lbnum_t20,lbname_t20; int lbi,lbs; do coutlbs; while(lbs!=1&lbs!=2); getchar(

24、); if(lbs=1) couttt 请输入姓名:; gets(lbname_t); for(lbi=0;lbilbn;lbi+) if(strcmp(lbstulbi.lbname,lbname_t)=0) break; else couttt 请输入学号:; gets(lbnum_t); for(lbi=0;lbilbn;lbi+) if(strcmp(lbstulbi.lbnum,lbnum_t)=0) break; if(lbi=lbn) couttt 查无此生!n; return; else if(lbstulbi.lbflag=1) couttt 该生正在上机,上机起始时间为%d

25、:%d:%dn,lbstulbi.lbstart.lbhour,lbstulbi.lbstart.lbminute, lbstulbi.lbstart.lbsecond; else couttt 该生未上机或已下机!n; void display() coutt 机器号 是否使用 使用者 学号 班级 上机时间n; coutt-n; for(lbk=0;lbk30;lbk+) if(lbcomlbk.lbf=0) coutt%02d 否-:-:-n,lbk+1; else coutyesendl; lbcomlbk.lbstut.lbname,lbcomlbk.lbstut.lbnum,lbcomlbk.lbstut.lbbanji,lbcomqhk.lb

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论