虚拟自动取款机ATM设计(C语言)
1.设计一个模拟自动取款机ATM,有常用的功能
2.常用的功能有:用户输入密码登录界面;取款界面;取款后的取款金额以及剩余显示,退出功能等等
3.程序执行的命令包括:(1)输入正确密码进入主登录页面
(2)执行取款界面
(3)显示取款金额以及剩余金额
(4)退出系统界面
#define _CRT_SECURE_NO_WARNINGS 1
#define _CRT_SECURE_NO_DEPRECATE 1
#define _CRT_NONSTDC_NO_DEPRECATE 1
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
int main()
{
char key, Cmoney;//定义变量
int password, zpassword = 123456;//定义密码与密码的正确值,默认正确密码为123456
int i = 1;
int a = 1000;//默认最初的金额为1000
while (1)
{
do
{
system("cls");//清屏
printf("********************欢迎来到模拟ATM取款机**********************\n");
printf("\n");
printf(" **********Please select key(请选择)**************\n");
printf("\n");
printf(" **********1.Password(密码验证)***********\n");
printf("\n");
printf(" **********2.Get money(取款)***********\n");
printf("\n");
printf(" **********3.Return(退出)*************\n");
printf("\n");
printf("********************欢迎来到模拟ATM取款机**********************\n");
key = getch();//key的值等于刚刚键盘录入的值
} while (key != '1' && key != '2' && key != '3');//当输入的值不为1,2,3时,循环执行里面的语句
switch (key)
{
/***************************选择选项1*****************************/
case '1'://当选择1时
system("cls");//清屏
do
{
i++;//记录输入密码的次数
printf(" Please input your password:(输入密码) \n");
scanf("%d", &password);
if (zpassword != password)//如果密码输入不正确,则执行下面的语句
{
if (i > 3)//密码错误,且已经达到三次
{
printf("The password is wrong!Press any key to exit...(密码错误,请按任意键退出)");
getch();
exit(0);//退出程序
}
else//密码错误,但是未达到三次
{
puts("Please try again!(重新输入)");
}
}
} while (zpassword != password);
//密码输入正确,且输入次数小于等于3
printf("OK.Please press any key to continue...(密码正确,请按任意键继续)");
getch();
/***************************选择选项2*****************************/
case'2':
do
{
system("cls");
if (password != zpassword)
{
printf("Please logging in,press any key to continue...(请使用密码登录)");
getch();
break;
}
else
{
printf("*********************************************\n");
printf("\n");
printf("Please select:(请选择取款金额)\n");
printf("\n");
printf(" 1.100$\n");
printf("\n");
printf(" 2.200$\n");
printf("\n");
printf(" 3.300$\n");
printf("\n");
printf(" 4.Return\n");
printf("\n");
printf("*********************************************\n");
scanf("%d", &Cmoney);
}
} while (Cmoney!=1&& Cmoney != 2&&Cmoney != 3&& Cmoney != 4);
if (Cmoney == 1)
{
system("cls");
a = a - 100;
printf("************************************************\n");
printf("\n");
printf(" 您刚刚取走:100$\n");
printf("\n");
printf(" 剩下的钱:%d$\n", a);
printf("\n");
printf("************************************************\n");
}
else if (Cmoney == 2)
{
system("cls");
a = a - 200;
printf("************************************************\n");
printf("\n");
printf(" 您刚刚取走:200$\n");
printf("\n");
printf(" 剩下的钱:%d$\n", a);
printf("\n");
printf("************************************************\n");
}
else if (Cmoney == 3)
{
system("cls");
a = a - 300;
printf("************************************************\n");
printf("\n");
printf(" 您刚刚取走:300$\n");
printf("\n");
printf(" 剩下的钱:%d$\n", a);
printf("\n");
printf("************************************************\n");
}
else
{
break;
}
case '3':
printf("\n");
printf("\n");
printf("\n");
printf("*********************************************\n");
printf("\n");
printf(" Thank You ! \n");
printf("\n");
printf(" Goodbye ! \n");
printf("*********************************************\n");
getch();
break;
}
break;
}
}