C语言程序设计报告(模拟ATM取款机)

仲恺农业工程学院

工程实训报告

ATM取款机

课程名称 C语言程序设计工程实训

姓 名 林少烈

院(系) 计算机科学与工程学院

专业班级 计算机113班

学 号 201110214317

指导教师 王成

仲恺农业工程学院教务处制目 录

1 需求分析1

2 系统总框图和功能模块说明1

2.1 系统总框图1

2.2 功能模块说明1

3 系统设计2

3.1 主要结构体2

3.2主要功能函数2

3.3 关键函数的流程图3

4 系统调试11

5 总结21

6 源程序清单23

6.1头文件23

6.2主程序23

6.3 解除被冻结用户40

6.4 用户注册41

1 需求分析

所设计的ATM取款机应具备以下功能:

插入银行卡(用账号输入的方式代替);

密码的输入;

用户信息查询;

用户余额查询;

取款;

转账;

修改密码;

退卡。

2 系统总框图和功能模块说明

2.1 系统总框图

图1 系统总框图

2.2 功能模块说明

输入用户账号模块:在运行时,完成用户账号的输入(代替插卡);

输入账号密码模块:①在输入账号之后,完成用户密码的输入;②在修改密码的过程中,完成用户输入旧密码的功能;

信息读取功能模块:完成用户信息的读取;

冻结账号功能模块:当输入密码3次错误时,冻结用户账号:

查询用户信息模块:完成用户的信息查询(不包括余额查询);

查询余额功能模块:完成用户余额的查询;

取款功能模块:完成取款功能模块:

转账功能模块:完成转职功能;

修改密码功能模块:完成用户修改密码功能;

退卡功能模块:完成退卡功能(即:退出程序功能)。

3 系统设计

3.1 主要结构体

用户账号、姓名{

char num[20];//用户账号

char name[10];//姓名char password[7];//密码

float balance;//余额

};

3.2主要功能函数

void read_info();//用户信息读取

void input_num(char * num);//输入账号

void now_exist(char * num);//判断是否被冻结或不存在

void existed(char * num);

void input_password(char * p_word,char * W);//输入密码

void face();//界面显示

void balance_refer();//余额查询

void choose(int c);//菜单选择

void draw_money();//取款

void set_password();//修改密码

void input_new_password(char * old_password);//设置新密码

void tran_account();//转账

void stamp();//打印单条

void info_refer();//信息查询

void out();//退出程序

void lock();//冻结账号

void save_info();//存储信息

3.3 关键函数的流程图

4 系统调试

首先运行程序,系统提示输入账号。

(1)当输入错误账号,系统提示:用户不存在,请从新输入。,

(2)当输入错误的密码时,系统提示:密码有误,请重新输入。

(3)当输入正确账号与密码时,进入主页面。

(4)主界面

(5)在主界面选择数字1,进入查询余额界面,界面显示余额。按任意键返回。

(6)在主页面选择数字2,进入取款界面,系统提示输入取款的金额,当输入不是整百数是,系统提示请输入正确的金额,请重新输入。

(8)当输入负数时,系统提示:请输入正确的金额,请重新输入。

(9)当输入超过卡里余额的数,系统会提示余额不足,请重新输入。

2

(10)当输入超过3000的数时,系统会提示:对不起,一次最多能取3000元,请重新输入。

(11)当输入正确的金额时,系统提示:交易成功,按0返回主菜单,按9继续取款。

(12)在主菜单界面选择数字3,进入修改密码界面,首先系统会提示:请输入旧密码。

(13)当输入就密码正确时,系统提示:请输入新密码(6位数)。

(14)当输入的新密码含有非数字时,系统提示:请输入正确的数字。

(15)当输入

c语言编程ATM取款机流程图,C语言程序设计报告(模拟ATM取款机).doc相关推荐

  1. c语言atm程序个人总结,C语言程序设计报告(模拟ATM取款机)

    <C语言程序设计报告(模拟ATM取款机)>由会员分享,可在线阅读,更多相关<C语言程序设计报告(模拟ATM取款机)(45页珍藏版)>请在人人文库网上搜索. 1.仲恺农业工程学院 ...

  2. c语言编程期刊论文管理系统,C语言编程下计算机软件论文

    1计算机软件C语言的编程实验 1.1计算机软件C语言的编程技巧 计算机软件C语言的编程中,最主要的依据是指针应用,C语言指针能够根据软件程序的编写需求,构建可行的函数,而程序员在设计函数编程的过程中, ...

  3. 高斯消元法的c语言编程,列主元高斯消元法的C语言编程

    列主元高斯消元法的C语言编程 列主元高斯消元法 基本思想:用高斯消元法求解线性方程组时,为避免小的主元,在进行第k步消元前,应该在第k列(k)元素aik(i k,(k)(k)例如|aikk| max| ...

  4. c语言程序设计自学跟谁好,双辽c语言编程学习,双辽学c语言编程哪个好,双辽学c语言编程自学好还是报班好...

    双辽c语言编程学习,双辽学c语言编程哪个好,双辽学c语言编程自学好还是报班好 首页 > 软件 > 双辽c语言编程学习 作者:镀金池   发布时间:2017-12-07 05:48 一个C语 ...

  5. c语言程序设计需要学多久,九江c语言编程学习,九江学c语言编程报班,九江学c语言编程一般要多久才能学会...

    九江c语言编程学习,九江学c语言编程报班,九江学c语言编程一般要多久才能学会 首页 > C语言 > 九江c语言编程学习 作者:镀金池   发布时间:2017-10-18 14:11 据ID ...

  6. c语言编程学多久,丰城c语言编程学习,丰城学c语言编程的学校,丰城学c语言编程一般要多久才能学会...

    丰城c语言编程学习,丰城学c语言编程的学校,丰城学c语言编程一般要多久才能学会 首页 > 软件 > 丰城c语言编程学习 作者:镀金池   发布时间:2018-04-09 16:40 在之后 ...

  7. 江门C语言培训,江门c语言编程学习,江门学c语言编程培训,江门学c语言编程效果怎么样...

    江门c语言编程学习,江门学c语言编程培训,江门学c语言编程效果怎么样 首页 > C语言 > 江门c语言编程学习 作者:镀金池   发布时间:2017-10-18 09:25 在初期的C语言 ...

  8. C语言报名里面培训怎么填,庄河c语言编程学习,庄河学c语言编程培训,庄河学c语言编程报个培训班怎么样...

    庄河c语言编程学习,庄河学c语言编程培训,庄河学c语言编程报个培训班怎么样 首页 > 软件 > 庄河c语言编程学习 作者:镀金池   发布时间:2017-11-29 11:13 明天利用时 ...

  9. 罗定c语言,罗定学c语言编程,罗定学c语言编程培训,罗定学c语言编程一般怎么收费...

    罗定学c语言编程,罗定学c语言编程培训,罗定学c语言编程一般怎么收费 首页 > 软件 > 罗定学c语言编程 作者:镀金池   发布时间:2018-10-04 23:40 依照c语言的法则, ...

最新文章

  1. 日志组件logback的介绍及配置使用方法
  2. Py之seaborn:数据可视化seaborn库(二)的组合图可视化之密度图/核密度图分布可视化、箱型图/散点图、小提琴图/散点图组合可视化的简介、使用方法之最强攻略(建议收藏)
  3. java数据类型_Java 变量、表达式和数据类型详解
  4. MyTask - old implementation - getEntitySet
  5. node 安装 webpack
  6. ExtJs2.0学习系列(7)--Ext.FormPanel之第四式(其他组件示例篇)
  7. 6.042 Mathematics for Computer Science
  8. 轻松获得网通、电信、铁通IP地址分配段
  9. MonoTouch 二三事(三)mono mkbundle 打包程序的解包支持
  10. 双极性正弦脉宽调制(双极性SPWM)介绍及MATLAB仿真验证
  11. 企业私有云存储选NAS还是私有云盘?3分钟带你了解企业NAS和企业云盘的区别
  12. 基于微信公众平台的智能硬件/智能设备APP开发详解
  13. 万兴科技开启公司史上最大规模秋招,拟在长沙组建千人团队
  14. 编写一个函数,判断某个数是否为水仙花数。
  15. 【Mac】使用Karabiner 映射输入法快捷键
  16. poi-tl实现word文档按模板下载
  17. 进制转换(二进制,八进制,十进制)
  18. linux下MongoDB客户端shell基本操作
  19. [线性代数]遗留问题
  20. Unity动画状态的获取和常用判断(逐步完善)

热门文章

  1. 终于发现了小米iHealth体温计F转为C的方法,搜了全网居然没有靠谱的方法
  2. 取消IE禁用加载项的提示的方法
  3. 质量监控和设备管理不好把控?是不是没上APS系统
  4. 小米android iso,小米全新 OS 自研底层,要挑战最强的 iOS 系统
  5. 【Tools】i1Profiler3.5安装教程详解
  6. centos8 yum问题
  7. 5G系统——终端AT命令更新
  8. java测试开发面试题总结--排序算法
  9. 网管交换机与非网管交换机的利弊
  10. linux快速杀进程