1144_机房收费管理系统

2022-5-16 18:17| 发布者: Hocassian| 查看: 76| 评论: 0|原作者: 肇庆学院ACM合集

摘要:
C:\Users\Administrator\Downloads\2019-10-12-10-14-2-89503646600800-Problem List-采集的数据-后羿采集器.html

Pro.ID

1144

Title

机房收费管理系统

Title链接

http://10.20.2.8/oj/exercise/problem?problem_id=1144

AC

0

Submit

23

Ratio

0.00%

时间&空间限制

  • Time Limit: 0/0 MS (Java/Others)     Memory Limit: 0/0 K (Java/Others)
  • 描述

    一、机房收费管理系统

    1.问题提出

    为了便于管理,需要对机房的上机收费进行计算机管理,所需要的功能为:建立学生的上机档案、对于毕业的学生能够删除其档案、根据上机和下机时间计算出本次所需费用、能够续钱。

    2.功能要求

    循环显示如图6所示的主菜单。

    在主菜单中选择1:建立名为duli16.3.dat的文件,并在其中添加若干学生的上机档案,信息包括学号、姓名、金额,要求学号是唯一的。

    在主菜单中选择2:要求用户输入学号,然后系统显示该学生档案,并自动开始计时(计时方法采用下述方法),如果原来余额不足6元,则不能上机,而且显示“余额不够,请续钱!”。

    计时方法:分别用系统提供的库函数time记录开始和结束的时间,比如start=time(NULL)和end=time(NULL),其中start和end是系统已声明的名为time_t的结构体类型,在程序中使用变量start和end前必须用“time_t start, end;”定义。difftime(end, start)函数返回以秒为单位的两个时间差,其返回类型是double型。可用dif=(int)difftime(end, start)使得整形变量dif得到时间差,再用dif/3600、dif%3600/60、dif%60分别计算时、分、秒。使用time_t类型或调用time和difftime函数时需要加命令行“#include <time.h>”,调用time函数时还需要加命令行“#include <stdio.h>”。

    在主菜单中选择3:停止对该学生计时,同时根据用户输入的学号,计算该学生上机时间,并按1小时2元收费(30分钟以内按半小时处理,60分钟以内按1小时处理),然后显示上机前后的金额。

    在主菜单中选择4:添加新档案,这时要求新学号和已有的学号不能重号。

    在主菜单中选择5:注销旧档案。

    在主菜单中选择6:要求用户输入学号和续钱额,续钱完成后分别显示续钱前后的金额。

    在主菜单中选择7:此项功能学生自由发挥,根据本组爱好增加与本题目相关的新功能。

    在主菜单中选择0:显示结束信息(如“感谢使用本软件!已正常退出,按任意键结束。”),按任意键后,退出本功能。

    ……………………….
    .
    请输入选项编号(0 ~7):.
    ……………………………
    . 1
    ——建立上机档案.  
    . 2
    ——开始上机.      
    . 3
    ——离开机房.      
    . 4
    ——添加新档案.    
    . 5
    ——注销旧档案.    
    . 6
    ——续钱.        
    . 7
    ——创新功能.      
    . 0
    ——退出系统.    
    ………………………….

    6 机房收费管理主菜单

    输入

    NULL

    输出

    Description

    一、机房收费管理系统

    1.问题提出

    为了便于管理,需要对机房的上机收费进行计算机管理,所需要的功能为:建立学生的上机档案、对于毕业的学生能够删除其档案、根据上机和下机时间计算出本次所需费用、能够续钱。

    2.功能要求

    循环显示如图6所示的主菜单。

    在主菜单中选择1:建立名为duli16.3.dat的文件,并在其中添加若干学生的上机档案,信息包括学号、姓名、金额,要求学号是唯一的。

    在主菜单中选择2:要求用户输入学号,然后系统显示该学生档案,并自动开始计时(计时方法采用下述方法),如果原来余额不足6元,则不能上机,而且显示“余额不够,请续钱!”。

    计时方法:分别用系统提供的库函数time记录开始和结束的时间,比如start=time(NULL)和end=time(NULL),其中start和end是系统已声明的名为time_t的结构体类型,在程序中使用变量start和end前必须用“time_t start, end;”定义。difftime(end, start)函数返回以秒为单位的两个时间差,其返回类型是double型。可用dif=(int)difftime(end, start)使得整形变量dif得到时间差,再用dif/3600、dif%3600/60、dif%60分别计算时、分、秒。使用time_t类型或调用time和difftime函数时需要加命令行“#include <time.h>”,调用time函数时还需要加命令行“#include <stdio.h>”。

    在主菜单中选择3:停止对该学生计时,同时根据用户输入的学号,计算该学生上机时间,并按1小时2元收费(30分钟以内按半小时处理,60分钟以内按1小时处理),然后显示上机前后的金额。

    在主菜单中选择4:添加新档案,这时要求新学号和已有的学号不能重号。

    在主菜单中选择5:注销旧档案。

    在主菜单中选择6:要求用户输入学号和续钱额,续钱完成后分别显示续钱前后的金额。

    在主菜单中选择7:此项功能学生自由发挥,根据本组爱好增加与本题目相关的新功能。

    在主菜单中选择0:显示结束信息(如“感谢使用本软件!已正常退出,按任意键结束。”),按任意键后,退出本功能。

    ……………………….
    .
    请输入选项编号(0 ~7):.
    ……………………………
    . 1
    ——建立上机档案.  
    . 2
    ——开始上机.      
    . 3
    ——离开机房.      
    . 4
    ——添加新档案.    
    . 5
    ——注销旧档案.    
    . 6
    ——续钱.        
    . 7
    ——创新功能.      
    . 0
    ——退出系统.    
    ………………………….

    6 机房收费管理主菜单

    Input

    NULL

    Output

    NULL

    Sample Input

    NULL

    Sample Output

    NULL

    Source
    Author

    样例输入

    NULL

    样例输出

    NULL

    作者


    路过

    雷人

    握手

    鲜花

    鸡蛋

    最新评论

    返回顶部