C语言实验报告
题目名称:C语言模拟ATM自动取款机系统
一:问题描述:
C语言模拟实现ATM自动取款机功能:输入密码,余额查询,取款,存款,转账,修改密码,退出功能;
代码实现的功能:
账号及密码输入:用户输入密码,才能进入。
登陆成功界面:共有六个选项,查询余额、取款、存款、转账,修改密码,退出分别对应1,2,3,4,5,6选项,若序号输入不正确会予以提示。
选定1后,进入查询余额界面; 选定2后,进入取款界面; 选定3后,进入存款界面;
选定4后,修改密码,选定5,进入转账;选定6,退出界面;
如果过程中操作有误,提醒是否继续操作。
二:分析问题
(1)
在main()函数用switch语句现实菜单功能,根据用户选择,进入不同功能区;
(2)
模拟ATM自动取款机功能的实现,需要用自定义函数实现板块化。
所用的自定义函数如下:
登录界面:void enter();
登录成功后的界面:void jiemian();
实现密码输入:void land();
实现余额查询:void inquiry();
实现取款功能:void withdraw();
实现存款功能:void deposit();
实现转账:void zhuangzhang();
实现修改密码:void correctscrect();
结束:void out();
输入有误,提示是否继续:int keep();
(3)
库函数:strcmp();system();
(4)
用户信息
结构体存储个人信息;
结构体数组存储的存储设计数据库知识,本实验模拟ATM机,简化处理,已经注册用户数据信息存储在结构体数组中;
三:解决问题
1. 用户信息
用结构体来描述用户的姓名、卡号、密码以及金额。
假设用户信息在结构体数组中;
2. 主函数函数
Switch语句实现菜单话;
(3)Void land();
需要解决的问题:1.密码输入2.检查密码是否输入正确3.密码输入次数不能超过3次。(if语句)
(4)void jiemian();
提示用户进行操作printf();
(5)void withdraw();
1.取款时,输入的金额不能为被100整除;
2.取款的金额不能大于余额;
3.修改余额;
(6)void deposit();
1.存款金额不能不被100整除
(7)void correctscrect();
1.修改密码,需要重复输入二遍来确定密码是否修改成功;
(8)void zhuangzhang();
1.转账金额不能不被100整除
2.输入对方账号
3.转账金额是否足够,不能不被100整除
(9)int keep();
1.当输入有误时,提醒是否继续操作;
(8)void out();
1.调用main(),下一个用户操作;
四:程序代码
#include
#include
#include
#include
void enter();//进入界面
void jiemian();//登录成功界面
void land();//登录
void inquiry();//查询余额
void withdraw();//取款
void deposit();//存款
void correctscrect();//修改密码
void out();//退出
void zhuangzhang();//转账