C/C++ATM(自动取款机)管理系统[2024-01-10]
3.ATM(自动取款机)管理系统
编写程序实现ATM机管理系统,需要自行设计账户信息(至少包括账号、密码、余额等信息,不少于三个账户)。程序应包含以下功能:
1)能够通过初始界面以菜单的形式选择进入管理员界面或用户界面。管理员界面应至少包括账户信息录入功能、监控管理功能和退出系统功能;用户界面应至少包括账户信息修改、查询功能和交易功能,以及输入密码错误时的卡冻结功能。管理员界面和用户界面都应以菜单的形式展示这些功能。(20分)
2)账户信息录入:应至少录入账号、密码和余额信息,可自行设计其它信息。(10分)
3)账户信息修改:修改密码功能。(5分)
4)账户信息查询:实现输入账号和密码后查询余额的功能。(5分)
5)交易功能:输入账号和密码后能够出钞或存款(余额增减)功能,转账功能(账户之间余额交互)。(10分)
6)打印凭条功能:用户完成一次交易后输出一定格式的交易凭条信息,模拟打印凭条的功能,输出格式要求自行设计。(5分)
7)监控和管理功能:模拟实现时间记录功能,自动统计并存储每日、每月、每年交易次数和交易金额等信息,自动记录异常动账信息(大额交易、频繁交易等)。(20分)
8)卡冻结功能:若用户在输入相应账号和密码时三次出错,则将卡冻结并记录这一异常事件;若输入的取款金额超出账户余额,则提示用户输入有误并提供更正功能。(10分)
9)退出系统功能。(5分)
10)拓展功能:自己新增功能设计或对已有功能进行优化。(10分)
提示:
1)在希望用户进行选择或输入操作前,程序需要预先输出相应菜单或提示的文本信息,包括输入的数据内容、格式及结束方式等。菜单可以使用选择结构输出。
2)以函数模块方式实现各功能,不能把所有代码全部写到主函数中,对实现和声明做出区分。变量名和函数名应尽可能有意义,符合命名规范。
3)用户信息可以使用结构体或数组存储,监控和管理功能要求自动或手动创建相应txt文件并设计有意义的文件名,用来为管理员存储交易信息和异常事件。