C语言ATM程序设计_第1页
C语言ATM程序设计_第2页
C语言ATM程序设计_第3页
C语言ATM程序设计_第4页
C语言ATM程序设计_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C C 语言程序实践语言程序实践 实验报告实验报告 姓姓 名名学学 号号 班班 级级指指 导导 教教 师师 开开 设设 学学 期期 开开 设设 时时 间间 实验题目实验题目自动取款机程序设计 实验日期实验日期 评评 定定 人人 签签字字 评评 定定 成成 绩绩 评评 定定 日日 期期 C 语言 实验报告 第 3 页 共 20 页 一 实验目的一 实验目的 1 函数的调用 2 结构体的使用 3 文件的应用 打开 关闭 输入 输出等 4 宏定义 二 实验内容与实验步骤二 实验内容与实验步骤 实验内容 原理分析实验内容 原理分析 1 给出数据结构或函数定义给出数据结构或函数定义 结构体 struct clients long int card number card password char name 20 float money yonghu 3 card number 银行卡号 card password 密码 name 用户名 money 卡内金额 自定义函数 void fuction float int 用于登陆后的操作 2 用流程图表示出来程序设计的思想用流程图表示出来程序设计的思想 开始开始 C 语言 实验报告 第 4 页 共 20 页 用户文件用户文件 是否存在是否存在 创建文件创建文件 输入用户信息输入用户信息 信息是否重信息是否重 复复 输入卡号和密码输入卡号和密码 输入信息输入信息 是否正确是否正确 错误是否错误是否 超过三次超过三次 输入输入 1 输入输入 2 输入输入 3 输入输入 4 输入输入 5 输入输入 其他其他 输入输入 0 存存 款款 取取 款款 充充 话话 费费 显显 示示 菜菜 单单 修修 改改 密密 码码 输输 入入 错错 误误 结束结束 C 语言 实验报告 第 5 页 共 20 页 3 给出具体实验步骤 给出具体实验步骤 include include define N 3 用户人数 struct clients long int card number card password char name 20 float money yonghu N FILE fp int i void fuction float int void main int j number password times1 3 times2 3 printf 欢迎使用中国建设银行自动取款机 n fp fopen clients txt a if getw fp EOF C 语言 实验报告 第 6 页 共 20 页 printf 用户文件未设置 n for i 0 i N i 文件不存在时 输入用户信息 printf 请输入第 d 位用户的信息 n i 1 printf 银行卡号密码用户名 卡内金额 n scanf d d s f if i 1 while yonghu i card number yonghu i 1 card number yonghu i card password yonghu i 1 card password printf 输入信息有重复 请重新输入 n printf 请输入第 d 位用户的信息 n i 1 printf 银行卡号密码用户名 卡内金额 n scanf d d s f if i 2 while yonghu i card number yonghu i C 语言 实验报告 第 7 页 共 20 页 1 card number yonghu i card password yonghu i 1 card password yonghu i card number yonghu i 2 card number yonghu i card password yonghu i 2 card password printf 输入信息有重复 请重新输入 n printf 请输入第 d 位用户的信息 n i 1 printf 银行卡号密码用户名 卡内金额 n scanf d d s f fprintf fp d d s f yonghu i card number yonghu i card password yonghu i name yonghu i money putc n fp fclose fp printf n n 请登录系统 n 登录系统 输入卡号和密码 printf 请输入您的银行卡号 n scanf d printf 请输入您的密码 n scanf d C 语言 实验报告 第 8 页 共 20 页 fp fopen clients txt r for i 0 i N i fscanf fp d d s f fclose fp for i 0 i N i 判断卡号及密码是否匹配 if number yonghu 0 card number printf 请输入您的银行卡号 n scanf d printf 请输入您的密码 n scanf d i 1 C 语言 实验报告 第 9 页 共 20 页 else printf 尝试失败 请按任意键退出 n exit 0 times1 else if number yonghu i card number if password yonghu i card password printf s 登陆成功 请继续您的操作 n yonghu i name j i i 5 登陆成功 退出循环 else if times2 1 0 printf 密码输入错误 您还有 d 次尝试机会 n times2 1 printf 请输入您的密码 n C 语言 实验报告 第 10 页 共 20 页 scanf d i 1 else printf 尝试失败 请按任意键退出 n exit 0 times2 fuction yonghu j money j void fuction float m int k float saved money fetched money payment int phone num x old password new password while 1 printf 1 存款 n2 取款 n3 充话费 n4 修改密码 n5 显示菜单 n0 退出系统 n C 语言 实验报告 第 11 页 共 20 页 scanf d switch x case 0 printf 退出系统 exit 0 case 1 printf 卡内金额 f n m printf 请输入存款金额 n scanf f while saved money 0 printf 输入有误 请重新输入 n printf 请输入存款金额 n scanf f m saved money printf 操作成功 卡内余额为 f n m yonghu k money m fp fopen clients txt w for i 0 i N i fprintf fp d d s f yonghu i card number yonghu i card password yonghu i name yonghu i money C 语言 实验报告 第 12 页 共 20 页 putc n fp fclose fp break case 2 printf 卡内金额 f n m printf 请输入取款金额 n scanf f m fetched money while fetched money 0 m 0 printf 输入有误 请重新输入 n m fetched money printf 请输入取款金额 n scanf f m fetched money printf 操作成功 卡内余额为 f n m yonghu k money m fp fopen clients txt w for i 0 i N i fprintf fp d d s f yonghu i card number yonghu i card password yonghu i name yonghu i money C 语言 实验报告 第 13 页 共 20 页 putc n fp fclose fp break case 3 printf 卡内金额 f n m printf 请输入电话号码 n scanf d printf 请输入所交话费金额 n scanf f m payment while payment 0 m 0 printf 输入有误 请重新输入 n m payment printf 请输入所交话费金额 n scanf f m payment printf 操作成功 卡内余额为 f n m yonghu k money m fp fopen clients txt w for i 0 i N i C 语言 实验报告 第 14 页 共 20 页 fprintf fp d d s f yonghu i card number yonghu i card password yonghu i name yonghu i money putc n fp fclose fp break case 4 while 1 printf 请输入原密码 n scanf d if old password yonghu k card password printf 请输入新密码 n scanf d printf 密码修改成功 n yonghu k card password new password fp fopen clients txt w for i 0 i N i fprintf fp d d s f yonghu i card number yonghu i card password yonghu i name yonghu i money putc n fp fclose fp C 语言 实验报告 第 15 页 共 20 页 break else printf 密码输入错误 n break case 5 break default printf 输入有误 请重新输入 n break 三 实验过程与结果分析三 实验过程与结果分析 1 现象 输入用户信息后 在登录系统时 输入第一个用户的信息 提示该用户不存在 解决方法 fp fopen clients txt r for i 0 i0 时 提示剩余尝试机会 当 times 1 0 时 退出程序 3 现象 存取款或充话费时 输入负数仍能运行 解决方法 增加循环 while saved money 0 printf 输入有误 请重新输入 n printf 请输入存款金额 n scanf f while fetched money 0 m 0 printf 输入有误 请重新输入 n m fetched money printf 请输入取款金额 n scanf f m fetched money while payment 0 m 0 printf 输入有误 请重新输入 n C 语言 实验报告 第 17 页 共 20 页 m payment printf 请输入所交话费金额 n scanf f m payment 四 实验结果总结四 实验结果总结 C 语言 实验报告 第 18 页 共 20 页 C 语言 实验报告 第 19 页 共 20 页 五 创新的部分五 创

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论