资源简介
机房收费管理系统
问题描述 结合我校计算机机房的运作模式,设计一种适合的收费管理系统,能够实现相关的人员检索,计时收费,管理汇总等功能模块。
开发环境 采用C或C++实现,VC++6.0
基本要求
主要功能模块:
(1) 登录模块
(2) 上机管理模块
说明:上机登记时,余额不足3元或卡处于挂失状态,则拒绝登记。
每位同学的一次上机形成一条记录,每30秒遍历一次上机记录表,对表中所有正上机字段为TRUE的记录的上机用时增加30秒,同时减少上机卡表中的余额。
(3) 上机卡管理模块
(4) 充值挂失模块
(5) 查找统计模块:统计某天上机的总时数、每次上机的平均时数和机房的收入;某学生上机的次数、上机总时数、每次上机平均时间;挂失和查询余额。
参考的数据结构:
上机卡(卡号,姓名,专业班级,余额,状态),状态有:正常和挂失。
上机记录(卡号,上机日期,开始时间,上机用时,正上机,管理号代码)
上机记录表永久保存,用于事后查询和统计。
设计要求
1) 界面友好,输入信息符合逻辑:如上机时间设定在合理的时间范围。
2) 能从实践生活出发,设计合理的功能模块
3) 各类信息的数据结构明晰
4) 可根据自身生活体验添加相关功能模块。
拓展功能要求
鼓励采用Turbo C/C++、MFC等开发工具,实现彩色或图形操作界面。鼓励引入小型数据作为处理数据的来源,拓展知识面。
代码片段和文件信息
#include
#include
#include
#include
#include
#include
//每三十秒扣除的钱
#define money_30s 0.1
using namespace std;
struct Card
{
char id[20]; //学号
char password[20]; //密码
char name[20];
char major[40]; //专业
char class_id[20]; //班级
float money; //余额
bool exist; //是否挂失
};
struct Record
{
char card_id[20]; //学号
int yearmonthday; //日期
unsigned int time_use; //上网时间
bool use; //是否正在上网
};
void init(); //初始化
int menu_select_0(); //开始菜单
int menu_select_stu(Card &stu); //学生菜单
int menu_select_adm(); //管理员菜单
void SignIn(); //登陆
void LossCard(); //挂失
void AddStu(); //添加学生
void DelStu(); //删除学生
void Info(); //查询某天的上网信息
void Look(); //查询某个学生的上网记录
void UseComputer(Card &stu); //上机
void StopComputer(Card &stu); //下机
void Despoit(Card &stu); //存款
void ShowCard(Card &stu); //显示上网卡的信息
void Save(); //保存当前信息
void Update(); //每30S更新函数
char admin_id[20] = “Admin“; //管理员账号
char admin_password[20] = “Password“; //管理员密码
list card_database; //上网卡数据库
list record_database; //上网记录数据库
//主程序
int main()
{
init();
time_t timer = time(NULL);
//当程序没退出时,每30s更新一次信息
while(menu_select_0()!=3)
{
int k = (time(0) - timer) / 30;
for(int i = 0;i < k;i++) Update(); //防止卡在其它页面时间太长
if(k > 0) timer = time(0);
}
printf(“\n再见!“);
system(“pause“);
return 0;
}
void init()
{
//读取上网卡信息
FILE *in;
in = fopen(“cards.txt““rb“);
Card t;
while(fread((char*)&t1sizeof(t)in))
card_database.push_back(t);
fclose(in);
ifstream fin;
//读取上网记录
in = fopen(“records.txt““rb“);
Record t2;
while(fread((char*)&t21sizeof(t2)in))
record_database.push_back(t2);
fclose(in);
}
int menu_select_0()
{
char i;
do{
system(“cls“);
printf(“1.登陆\n“);
printf(“2.挂失\n“);
printf(“3.退出系统\n“);
printf(“请选择:“);
i=getchar();
setbuf(stdin NULL);//清空缓冲区
}while(i<‘0‘ || i>‘3‘);
if(i == ‘1‘) SignIn();
if(i == ‘2‘) LossCard();
return (i-‘0‘);
}
int menu_select_stu(Card &stu)
{
char i;
do{
system(“cls“);
ShowCard(stu);
printf(“1.上机\n“);
printf(“2.下机\n“);
printf(“3.充值\n“);
printf(“4.退出\n“);
printf(“请选择:“);
i=getchar();
setbuf(stdin NULL);//清空缓冲区
}while(i<‘0‘ || i>‘4‘);
switch(i - ‘0‘)
{
case 1:UseComputer(stu);break;
case 2:StopComputer(stu);break;
case 3:Despoit(stu);break;
}
return (i-‘0‘);
}
int menu_select_adm()
{
char i;
do{
printf(“欢迎您,管理员\n“);
printf(“1.添加学生\n“);
printf(“2.删除学生\n“);
printf(“3.当天上机信息\n“);
printf(“4.查看学生上机信息\n“);
printf(“5.退出\n“);
printf(“请选择:“);
i=getchar();
setbuf(stdin NULL);//清空缓冲区
}while(i<‘0‘ || i>‘5‘);
switch(i - ‘0‘)
{
case 1:AddStu();break;
case 2:DelStu();break;
case 3:Info();break;
case 4:Look();break;
}
return (i-‘0‘);
}
void SignIn()
{
char id[20];
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-11-10 22:54 机房收费管理系统(程序设计)\
文件 0 2017-10-31 12:12 机房收费管理系统(程序设计)\cards.txt
文件 200 2017-10-31 12:12 机房收费管理系统(程序设计)\records.txt
文件 8661 2017-10-30 15:14 机房收费管理系统(程序设计)\机房收费管理系统.cpp
文件 1896509 2017-11-02 14:28 机房收费管理系统(程序设计)\机房收费管理系统.exe
文件 478 2017-10-28 06:46 机房收费管理系统(程序设计)\说明.txt
文件 217351 2017-10-26 20:37 机房收费管理系统(程序设计)\要求.jpg
- 上一篇:编译原理 C-语言 语法分析
- 下一篇:c语言期末大作业,控制台实现图书馆管理系统
相关资源
- 基于CS的TCP文件传输程序设计
- 04737C++ 程序设计精华.docx
- C++程序设计精讲
- C语言程序设计50例.docx
- C语言程序设计教材习题参考答案.do
- c++程序设计(全国)
- C++程序设计语言.pdf
- 数值分析算法程序设计 C++实现
- [BUPT]面向对象程序设计C++ - 平时作业
- c语言 Windows_程序设计_第五版
- 游戏开发 c语言 程序设计 飞机大战
- 《面向对象的程序设计语言——C++》
- Win32多线程程序设计--详细书签版
- 谭浩强《C++面向对象程序设计》实验
- 高质量程序设计指南:C++/C语言第
- 北航991数据结构与C语言程序设计历年
- c++语言程序设计第三版清华大学出版
- C语言程序设计教程(第3版)谭浩强张
- C++程序设计教程(第2版).钱能(带详
- 《C++程序设计原理与实践》第二版英
- C++程序设计 思想与方法 第2版 完整扫
- Matlab与C++混合程序设计第三版
- C语言程序设计教程第二版习题解答与
- 新概念C++程序设计大学教程第2版张基
- C程序设计语言_第2版(徐宝文等译)
- 数据结构与程序设计C++语言描述(中
- 个人总结的一些C/C++编码规范
- C++ 程序设计 模拟银行储蓄系统
- C程序设计语言(第2版·新版)
- 用C语言实现成绩表的快速排序程序设
评论
共有 条评论