机房收费管理系统

上传人:微*** 文档编号:101447864 上传时间:2022-06-05 格式:DOCX 页数:17 大小:100.60KB
收藏 版权申诉 举报 下载
机房收费管理系统_第1页
第1页 / 共17页
机房收费管理系统_第2页
第2页 / 共17页
机房收费管理系统_第3页
第3页 / 共17页
资源描述:

《机房收费管理系统》由会员分享,可在线阅读,更多相关《机房收费管理系统(17页珍藏版)》请在装配图网上搜索。

1、第一章课程设计任务内容 0第二章详细课程设计 12.1 系统总体模块图 12.2 系统的功能模块划分 12.3 主要函数介绍 22.4 系统程序代码及注释 2第三章软件使用说明 73.1 录入系统 73.2 计算功能 73.3 查询功能 83.4 机器使用情况 9第四章课程设计心得与体会 9附录一 : 程序清单 11第一章 课程设计任务内容题目:机房收费管理系统目前,在部分高校中,计算机机房的上机收费仍然采用传统的人工计时方式, 即学生凭有效证件前来上机, 由机房管理人员手工登记开始时间和结束时间,然后按实际机时进行计算并收取相应费用。 人工计时计费方式不但效率低, 而且容易出错, 也不利于定

2、期的统计工作。 随着高校学生人数的不断增加, 这些工作的难度和强度也不断加大,给机房管理部门带来了很大的压力。本课程设计要求实现机房收费管理系统,具体任务如下:( 1)输入功能:输入 30 名学生的学号、班级、姓名、上机起始时间。( 2)计算功能:计算每个下机学生的上机费用,每小时1 元。(上机费用=上机时间* 1.0/h ,不足一小时按一小时计算)( 3)查询功能:按条件(班级、学号、姓名)显示学生的上机时间。( 4)机器使用情况的显示(显示方式不限但要一目了然)。第二章详细课程设计2.1 系统总体模块图系统的整体模块描述如图所示机房收费系统机房运行管理用户管理计算机管理图3-1系统总体模块

3、图2.2 系统的功能模块划分每一条记录包含一个学生学号、学生班级、学生姓名、上机起始时间,同时 包含:完成对学生上机时间的录入;按条件(班级、学号、姓名)显示学生的上 机时间,计算每个下机学生的上机费用,并能根据学生的上机时间进行计算上机 费用,而且还能显示机器使用情况。2.3 主要函数介绍Main-menu 函数:输出机房管理系统菜单Input 函数:输入若干学生的学号、班级和姓名及上机时间Online 函数:学生上机,输入上机学生学号或姓名及时间Calculator 函数:计算上机费用并输出Offline 函数:学生下机时间,调用 calculator 函数得到上机费用Search 函数:

4、查找学生上机信息Display 函数:显示全部机器的使用信息Main 函数:函数调用以及结束程序2.4 系统程序代码及注释2.4.1 输入功能:输入30名学生的学号、班级、姓名、上机起始时间#include #include #include #include #define N 20#define M 100 struct student char idN; char theclassN; char nameN; char ontimeN; studentM; int n; void addition() int i;printf( n 请输入录入学生信息的总数: );scanf( %d,&

5、n); for (i=1;i=n;i+) printf( nt请输入第於学生学号(20s): ,i); scanf( %s,studenti-1.id);printf( nt请输入第阶学生班级(20s): ,i);scanf( %s,studenti-1.theclass);printf( nt请输入第於学生姓名(20s): ,i);scanf( %s,studenti-1.name);printf( nt请输入第阶学生上机时间(20s)(例:02): ,i); scanf( %s,studenti-1.ontime);printf( nt提示:您已成功录入第廉信息n ,i);2.4.2 计算

6、功能:计算每个下机学生的上机费用,每小时1 元。(上机费用 =上机时间 * 1.0/h ,不足一小时按一小时计算)void calculate() int hours;char times30;time_t rawtime;struct tm * timeinfo;time ( &rawtime );timeinfo = localtime(&rawtime );strcpy(times,asctime(timeinfo);printf( t 所有学生上机费用如下 :n );for ( int i=1;i(times14-48)*10+times15)hours=(times11-48)*10

7、+times12-(studenti-1.ontime0-48)*10-stud enti-1.ontime1;elsehours=(times11-48)*10+times12-(studenti-1.ontime0-48)*10-stud enti-1.ontime1+1;printf( %dn ,hours);void calculate() int hours;char times30;time_t rawtime;struct tm * timeinfo;time ( &rawtime );timeinfo = localtime(&rawtime );strcpy(times,as

8、ctime(timeinfo);printf( t 所有学生上机费用如下 :n );for ( int i=1;i(times14-48)*10+times15)hours=(times11-48)*10+times12-(studenti-1.ontime0-48)*10-stud enti-1.ontime1;elsehours=(times11-48)*10+times12-(studenti-1.ontime0-48)*10-stud enti-1.ontime1+1;printf( %dn ,hours);2.4.3 查询功能:按条件(班级、学号、姓名)显示学生的上机时间。void

9、search() int i,b,c,count;do char find20;printf( n 请选择查询方式:1. 根据学号查询 ;2. 根据班级查询 ;3. 根据姓名查询 ;4. 根据上机时间 : );scanf( %d,&b);switch (b) case 1: count=PF_FLOATING_POINT_PRECISION_ERRATA; printf(n* 请输入学生的学号: );scanf( %s,find);for (i=0;in;i+) if (strcmp(studenti.id,find)=0) count+;if (count=PF_FLOATING_POINT

10、_EMULATED)printf( 学生学号 t 学生班级 t 学生姓名 t 上机时间 n );printf( %8s%15s%15s%17,studenti.id,studenti.theclass, studenti.name,studenti.ontime);if (!count)printf( * 提示 : 该生不存在);goto A;case 2: count=PF_FLOATING_POINT_PRECISION_ERRATA;printf( n* 请输入学生的班级: );scanf( %s,find);for (i=0;in;i+) if (strcmp(studenti.the

11、class,find)=0) count+;if (count=PF_FLOATING_POINT_EMULATED)printf( 学生学号 t 学生班级 t 学生姓名 t 上机时间 n );printf( %8s%15s%15s%17,studenti.id,studenti.theclass,studenti.name,studenti.ontime);if (!count)printf( * 提示 : 该生不存在);goto A;case 3: count=PF_FLOATING_POINT_PRECISION_ERRATA;printf( n* 请输入学生的姓名 : );scanf(

12、 %s,find);for (i=0;in;i+)if (strcmp(studenti.name,find)=0)count+;if (count=PF_FLOATING_POINT_EMULATED)printf( 学生学号 t 学生班级 t 学生姓名 t 上机时间 n );printf( %8s%15s%15s%17,studenti.id,studenti.theclass, studenti.name,studenti.ontime);if (!count) printf( * 提示 : 该生不存在 );goto A;case 4: count=PF_FLOATING_POINT_P

13、RECISION_ERRATA;printf( n* 请输入学生的上机时间 : );scanf( %s,find);for (i=0;in;i+) if (strcmp(studenti.ontime,find)=0) count+;if (count=PF_FLOATING_POINT_EMULATED)printf( 学生学号 t 学生班级 t 学生姓名 t 上机时间 n );printf(%8s%15s%15s%17,studenti.id,studenti.theclass,studenti.name,studenti.ontime);if (!count)printf( * 提示 :

14、 该生不存在);goto A;default :printf( * 提示 : 输入错误 );A:printf( nt*1. 继续 nt*0. 返回主菜单);printf( nt 请输入您的选择: );scanf( %d,&c);while (c);2.4.4 机器使用情况的显示(显示方式不限但要一目了然)void menu()欢迎进入机房收费管理系);printf( nt*统 !*n printf( t* 1. 录入功能 2.计算功能 *n );printf( t* 3. 查询功能 0.-*EXIT*- *n);printf(t*n printf( );nt 请输入您的选择: );void m

15、ain() system( color 5f);int a;C:menu();scanf( %d,&a);switch (a)case 0:printf( * 正在退出 * 谢谢使用本系统,再见 ); break;case 1:addition();goto C;/* 录入功能 */ case 2:calculate();goto C; /* 浏览功能*/case 3:search();goto C; /* 查询功能*/ 第三章 软件使用说明图 3-1 输入 30 名学生的学号、班级、姓名、上机起始时间3.2 计算功能图 3-2 计算每个下机学生的上机费用3.3 查询功能3.4 机器使用情况图

16、 3-4 机器使用情况查询第四章 课程设计心得与体会在这次课程设计中,我体会颇多,学到很多东西。我加强了对C+勺认识,复习了自己以前的知识,自己的逻辑思考能力也提高不少。从而对MicrosoftVisual C+ 6.0 又有了更深入的认识!在这次课程设计中,我还懂得了程序开发的一些比较重要的步骤,比如需求分析、总体设计、程序模块设计( 含功能需求、程序代码设计与分析、运行结果) 、系统使用说明等。总之,通过这次课程设计, 我收获颇丰, 相信会为自己以后的学习和工作带来很大的好处。 最重要的还是激发了我编程的兴趣和热情,让我从一个只懂理论变成了能做一些小型程序,让我对编程更加热爱了。整体地评价

17、这次课程设计,我认为收获很大,正如上面所说的那样, 通过课程设计, 既复习了以前的旧知识, 又学到了一些新的知识; 设计增强了我们用所学知识去解决具体问题的能力, 进一步培养了我们独立思考问题和解决问题的能力。特别是学会了在Visual C+ 集成开发环境中如何调试程序的方法。 当然, 老师的悉心指导和同学的帮助也是不可忽视的, 在此感谢本次课程设计中辅导老师对我的关心和帮助, 诚心诚意感谢她对我的鼓励与教导,是她在我迷茫的时候给了我些许提示,激发了我编程的灵感;还有,我在此也十分感谢本次课程设计中同学们对我的帮助, 尽管本次不是团队合作, 但是他们也给了我不少的提示和帮助,是他们让我有信心坚

18、持做下来,在此感谢他们!附录一 : 程序清单#include #include #include #include #define N 20#define M 100 struct student char idN; char theclassN; char nameN; char ontimeN; studentM; int n; void addition() int i;printf( n 请输入录入学生信息的总数: );scanf( %d,&n); for (i=1;i=n;i+) printf( nt请输入第阶学生学号(20s): ,i); scanf( %s,studenti-1.

19、id);printf( nt请输入第於学生班级(20s): ,i); scanf( %s,studenti-1.theclass);printf( nt请输入第於学生姓名(20s): ,i);scanf( %s,studenti-1.name);printf( nt请输入第阶学生上机时间(20s)(例:02): ,i); scanf( %s,studenti-1.ontime);printf( nt提示:您已成功录入第廉信息n ,i); (上机费用=上机时间* 1.0/h ,不足一小时按一小时计算)void calculate() int hours;char times30;time_t r

20、awtime;struct tm * timeinfo; time ( &rawtime );timeinfo = localtime(&rawtime );strcpy(times,asctime(timeinfo);printf( t 所有学生上机费用如下 :n );for ( int i=1;i(times14-48)*10+times15)hours=(times11-48)*10+times12-(studenti-1.ontime0-48)*10-studenti-1.ontime1;elsehours=(times11-48)*10+times12-(studenti-1.ont

21、ime0-48)*10-studenti-1.ontime1+1;printf( %dn ,hours);void calculate() int hours;char times30;time_t rawtime;struct tm * timeinfo;time ( &rawtime );timeinfo = localtime(&rawtime );strcpy(times,asctime(timeinfo);printf( t 所有学生上机费用如下 :n );for ( int i=1;i(times14-48)*10+times15)hours=(times11-48)*10+tim

22、es12-(studenti-1.ontime0-48)*10-studenti-1.ontime1;elsehours=(times11-48)*10+times12-(studenti-1.ontime0-48)*10-studenti-1.ontime1+1;printf( %dn ,hours);void search() int i,b,c,count;do char find20;printf( n 请选择查询方式:1. 根据学号查询 ;2. 根据班级查询 ;3. 根据姓名查询 ;4. 根据上机时间 : );scanf( %d,&b);switch (b) case 1: coun

23、t=PF_FLOATING_POINT_PRECISION_ERRATA; printf(n* 请输入学生的学号: );scanf( %s,find);for (i=0;in;i+) if (strcmp(studenti.id,find)=0) count+;if (count=PF_FLOATING_POINT_EMULATED)printf( 学生学号 t 学生班级 t 学生姓名 t 上机时间 n );printf( %8s%15s%15s%17,studenti.id,studenti.theclass, studenti.name,studenti.ontime);if (!coun

24、t)printf( * 提示 : 该生不存在);goto A;case 2: count=PF_FLOATING_POINT_PRECISION_ERRATA;printf( n* 请输入学生的班级: );scanf( %s,find);for (i=0;in;i+) if (strcmp(studenti.theclass,find)=0) count+;if (count=PF_FLOATING_POINT_EMULATED)printf( 学生学号 t 学生班级 t 学生姓名 t 上机时间 n ); printf( %8s%15s%15s%17,studenti.id,studenti.

25、theclass, studenti.name,studenti.ontime);if (!count)printf( * 提示 : 该生不存在);goto A;case 3: count=PF_FLOATING_POINT_PRECISION_ERRATA;printf( n* 请输入学生的姓名 : );scanf( %s,find);for (i=0;in;i+) if (strcmp(studenti.name,find)=0) count+;if (count=PF_FLOATING_POINT_EMULATED)printf( 学生学号 t 学生班级 t 学生姓名 t 上机时间 n

26、);printf( %8s%15s%15s%17,studenti.id,studenti.theclass, studenti.name,studenti.ontime);if (!count) printf( * 提示 : 该生不存在 );goto A;case 4: count=PF_FLOATING_POINT_PRECISION_ERRATA;printf( n* 请输入学生的上机时间 : );scanf( %s,find);for (i=0;in;i+) if (strcmp(studenti.ontime,find)=0) count+;if (count=PF_FLOATING

27、_POINT_EMULATED)printf( 学生学号 t 学生班级 t 学生姓名 t 上机时间 n );printf( %8s%15s%15s%17,studenti.id,studenti.theclass, studenti.name,studenti.ontime); if (!count)printf( * 提示 : 该生不存在);goto A;default :printf( * 提示 : 输入错误 );A:printf( nt*1. 继续 nt*0. 返回主菜单);printf( nt 请输入您的选择: );scanf( %d,&c); while (c);void menu(

28、)printf(nt*欢迎进入机房收费管理系!*n);printf( printf( printf(*n printf( );nt 请输入您的选择: );t* 1. 录入功能 2. 计算功能 *n );t* 3. 查询功能 0.-*EXIT*- *n);t* void main() system( color 5f);int a;C:menu();scanf( %d,&a);switch (a)case 0:printf( * 正在退出 * 谢谢使用本系统,再见 ); break;case 1:addition();goto C;/* 录入功能 */ case 2:calculate();goto C; /* 浏览功能 */ case 3:search();goto C; /* 查询功能 */

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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