C语言设计ATM存取款界面
2016-01-07 12:07
387 查看
这个虽然很简单,但是我还是弄了一会儿,可见有多菜。练习算。
主要考察switch开关语句、do...while语句,页面的跳转我用的是goto,虽然是弊端,可是还是用了,因为太菜啊。大家有好建议的欢迎提出。
好了不说了,贴源码,欢迎各位网友老师,提出批评改进意见。
主要考察switch开关语句、do...while语句,页面的跳转我用的是goto,虽然是弊端,可是还是用了,因为太菜啊。大家有好建议的欢迎提出。
好了不说了,贴源码,欢迎各位网友老师,提出批评改进意见。
/** * Copyright (c) 1991 - 2016 Arvin Tang. * All rights reserved. * * 文件名称: * 简要描述:用C语言实现ATM界面,很丑的说 * * 当前版本:1.0 * 作 者: * 完成日期:2016-1-7 * 修订说明: * * 取代版本: * 作 者: * 完成日期: * 修订说明: */ #include <stdio.h> #include <stdlib.h> // //clrscr();函数不是标准的C函数,只存在Tuber C中且#include <conio.h>。 //但是可以用system("cls");代替,且#include <stdlib.h>。 void pw(void); void qu(void); void cun(void); void cha(void); int qianshu = 1000;//定义卡内钱数 int main(void) { int number; pw(); system("cls");//清除屏幕上的密码 loop:do { printf("=========================\n"); printf("|\t请选择以下数字:\t|\n"); printf("|\t1、取款\t\t|\n"); printf("|\t2、存款\t\t|\n"); printf("|\t3、查询余额\t|\n"); printf("|\t4、退出\t\t|\n"); printf("=========================\n"); scanf("%d",&number); }while(number != 1 && number != 2 && number != 3 && number != 4); switch(number) { case 1: qu(); system("cls"); goto loop; case 2: cun(); system("cls"); goto loop; case 3: cha(); system("cls"); goto loop; case 4: printf("谢谢使用!\n再见!\n"); system("pause"); break; } return 0; } /** * 函数名称:密码输入判断函数 * 输入参数: * 输出参数: * 返 回 值: */ void pw(void) { int pw;//密码变量 int i=1;//密码次数累加量 printf("温馨提示密码:520,存款只能存整数!\n"); printf("请输入密码:\n"); scanf("%d",&pw); while(pw != 520) { i++; system("cls"); printf("请第%d次输入密码\n", i); scanf("%d",&pw); if(i==3) { printf("谢谢使用,密码错误次数过多,请明天再试。\n"); exit(0);//输入错误次数过多,系统退出。 } } } /** * 函数名称:取款 * 输入参数: * 输出参数: * 返 回 值: */ void qu(void) { int number;//菜单数 do { system("cls");//清屏 //取款菜单 printf("=========================\n"); printf("|\t请选择以下数字:\t|\n"); printf("|\t1、取100\t|\n"); printf("|\t2、取200\t|\n"); printf("|\t3、取300\t|\n"); printf("|\t4、返回\t\t|\n"); printf("=========================\n"); scanf("%d", &number); }while(number != 1 && number != 2 && number != 3 && number != 4); //三级菜单 do { switch(number) { case 1: qianshu -= 100; printf("请稍后!,正在吐钞...\n"); printf("目前余额:%d\n", qianshu); break; case 2: qianshu -= 200; printf("请稍后!,正在吐钞...\n"); printf("目前余额:%d\n", qianshu); break; case 3: qianshu -= 300; printf("请稍后!,正在吐钞...\n"); printf("目前余额:%d\n", qianshu); break; case 4: return; } scanf("%d", &number); }while(number != 4); } /** * 函数名称:存款 * 输入参数: * 输出参数: * 返 回 值: */ void cun(void) { int number; system("cls"); do { loop1:printf("请输入存款金额:\n"); scanf("%d", &number); qianshu += number; system("cls"); printf("本次存款:%d\n", number); printf("你目前账号余额:%d\n", qianshu); //菜单 printf("=========================\n"); printf("|\t请选择以下数字:\t|\n"); printf("|\t1、继续存款\t|\n"); printf("|\t2、返回\t\t|\n"); printf("=========================\n"); scanf("%d", &number); if(number == 1) goto loop1; }while(number != 2); } /** * 函数名称:查询 * 输入参数: * 输出参数: * 返 回 值: */ void cha(void) { int number; do { system("cls"); printf("你目前账号余额:%d\n", qianshu); printf("\n"); printf("=========================\n"); printf("|\t请选择以下数字:\t|\n"); printf("|\t1、继续查询\t|\n"); printf("|\t2、返回\t\t|\n"); printf("=========================\n"); scanf("%d", &number); }while(number != 2); }
相关文章推荐
- C语言常用数学函数
- C++builder 图像字符流的存储和加载
- 【c/c++】STL标准入门汇总
- C++11多线程(十八):线程池
- C++操作Word学习笔记
- vc++中压缩文件--ZIP Util
- C++ 的一些经验!
- 关于python3调用C/C++的方法(ctypes)
- 【c/c++】类模板
- txt文本行数计算;转为二维数组;二维数组写为txt内容
- 【c/c++】函数模板和模板函数
- C语言学习之关键字第五讲
- (IOS自学)C语言基础学习(一)
- 二维码识别:Halcon与C++中多字节环境下的字节编码格式设置和转换
- C++ typedef用法小结 (※不能不看※)
- c++ 模板与继承
- C++ for 与while循环的区别
- C语言宏定义技巧(常用宏定义)
- c语言中箭头的用法
- c++的友元