机房收费管理系统

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、题目:设计一个机房收费管理系统

二、设计思路

1、总体设计

1)分析程序的功能:

设计一个机房收费系统,实现对学生上机收费的管理,从而方便学校机房的管理。

2)系统总体结构:

每一次运行的过程可以由这几部分完成:输入:输入学生的上机学号,班级、姓名上级起始时间;计算:计算每个学生的上机费用;查询:查找学生上机信息并显示(班级、学号、姓名);显示:显示机器使用情况信息

总共四个步骤:

对于每一次运行,关注的数据有三个:(1)学生的信息(2)计算机时费用(3)学生上机情况;

对于统计信息需要三个:(1)学生上机信息并显示(班级、学号、姓名)(2)显示机器使用情况信息(3)上机学生的学号、班级、姓名、上机起始时间;

这几组数据内部联系很大,所以考虑把他们封装为结构体变量。

机器使用信息需要记录两个:(1)机器使用的标记(2)使用机器的学生。

根据问题的描述,可以按照程序要求的功能采用结构化的设计思想。机房收费系统可利用菜单(界面制作switch语句)使用户选择各个功能模块,而后可根据不同的选项进入到不同的功能模块进行执行。结束程序,选择y之外的任何字母或数字,如果想让程序循环执行,则选择y。

以上功能模块分别用函数来实现,然后由主函数main来调用。

2、各功能模块的设计:说明各功能模块的实现方法

1)Input模块

该函数为输入学生信息:学号,姓名,班级,上机起始时间,并对学生是否上机做标记(flag为1,f为1为上机),人数与上机数一致。

2)Findstunum模块

查询功能:当输入的学号与学生信息中的学号相同时,则输出该生学号,班级,姓名和上下时间,若该生未下机,则下机时间显示0。

下机功能:询问是否下机,用switch语句控制,若下机则要求输入下机时间,不下机则退出。

3)Calculate(计算)模块

该模块中,由于时、分、秒三个时间单位不统一,首先要统一单位,均用秒做单位(1h=3600s 1min=60s),然后判断上机时间是否满一小时,不满一小时按一小时收费,超过一小时再进行计算。不足一小时按一小时收费,整小时则每小时1元收费。

代码参见Calculate(计算)函数。

4)calout(输出)模块

输出上机学生学号,班级,姓名,若下机显示消费金额,没下机显示“未下机”。

5)computer模块

首先计算机使用情况信息:通过标记判断机器是否在使用,机器在使用则显示学生信息,机器未使用则显示学生已下机。通过标记判断机器是否在使用,机器在使用则显示学生信息,机器未使用则显示学生已下机。

2)查询功能:

采取输入的学号与学生信息中的学号是否对应相等来判断。

4、你所设计的程序最终完成的功能

1)说明你编制的程序能完成的功能

输入功能:输入上机学生的学号,班级,姓名,上机起始时间。计算功能:计算每个学生的上机费用,每小时1元。

查询功能:查找学生上机信息并显示(班级、学号、姓名)

显示机器使用情况信息。

2)准备的测试数据及运行结果

三、程序清单

1)main函数

2)

3)

4)

5)

6)

7)

四、对该设计题目有何更完善的方案

1、对自己完成程序进行自我评价。

能独立思考程序并在他人协助下完成程序编写与调试,不能很好的运用所学的知识解决程序中所出现的问题。通过对课程的设计,使我知道自身的不足,以及C++的深奥,相信自己会在假期中增强对C++的了解及应用.

2、对课题提出更完善的方案

加入创新元素就更好了,以后自己在这方面多努力。

五、收获及心得体

对输入的数据要进行合理性检验,例如数组中存储了30台计算机的信息,用户进行选择时,必须在这个范围内。

由于知识上的缺陷会导致常常出现同样的错误,应认真与人交流汲取知识,自我完善;新的知识可能导致程序的大量简化,思路更清楚结构,结构更简单,应不停的学习,并通过练习提高能力。

程序的编写真的很无聊,很难,在自己努力以及求助他人编完程序以后看着自己的劳动成果,心里是甜的!

日期:2012年6月28日

相关文档
最新文档