c语言构建简单的ATM界面
目的:
能够灵活的运用c语言构建简单的ATM界面,能够让c语言在实际中得到应用。
技术
各种变量的应用,终端的输入,scanf,例如Int 的为 %d ,char 的为%c
条件结构语句if else,switch,循环语句,for,while,无条件转移语句goto
具体的实际使用
我们要创造一个ATM界面,首先要欢迎使用,可以用printf简单的实现
image.png
接下来我们要有一个输入密码的界面,并且对密码的输入有一定的要求,密码错误重新输入,最多输入四次,这时就要用到条件语句和for循环
代码引用
printf("请输入密码:");
if(password!=123)
{
for(int i=0;i<4;i++)
{printf("密码错误重新输入:");
scanf("%d",&password);
if(password==123){
printf("1.开始取款\n");
printf("2.开始存款\n");
printf("3.更改密码\n");
printf("4.退出\n");
printf("请进行操作");break;
}
if(i==3)
{printf("此卡已被冻结,请联系客服");
printf("退出");break;
}
}
}
else
{
printf("1.开始取款\n");
printf("2.开始存款\n");
printf("3.更改密码\n");
printf("4.退出\n");
printf("请进行操作");
进入到自己的账户里面,会有四个操作选项,取款,存款,更改密码,退出,由于我们这个是可以重复使用的,所有我们用一个while(1){},来实现这个操作的循环,这个while里面的1是一直正确的,非零即真,从而可以一直循环,而且这里面们要对这四个进行分别操作,可以用到switch,设置一个选择变量,取款,存款,更改密码,退出用1,2,3,4代替
代码引用
switch(choice)
{
case 1:break;
case 2:break;
case 3:break;
case 4:break;
}
对于取款的操作,我们首先要设置一个金额变量,然后进行取款的一系列操作
代码引用
case 1:
loop:
printf("开始取款\n");
printf("请输入取款金额:");
scanf("%d",&j);
if(j<=balance)
{
printf("取款成功,当前余额为%d",balance-j);break;
}else
{
printf("余额不足,是否继续Y/N\n");
fflush(stdin);
char ch;
scanf("%s",&ch);
if(ch=='Y') goto loop;
else printf("退出");
}break;
这里我们运用一个函数goto,指向我们添加的标志loop;而且要**注意**我们这里要用fflush(stdin),是清空一下缓存,从而才能够用scanf。
对于存款,只需要设置一整型变量,然后从终端输入
代码引用
case 2:
printf("开始存款\n");
scanf("%d",&k);
printf("存款成功 当前余额为%d",balance+k);
break;
更改密码我们也只用重新输入密码,设置一个新密码就行了
代码引用
case 3:
printf("更改密码");
printf("请输入原始密码:");
scanf("%d",&password);
if(password==123)
{printf("请设置密码");
int newpassword;
scanf("%d",&newpassword);
password=newpassword;
printf("请确认密码");
}else printf("请返回重试");
break;
最后就是退出该操作,有错误就实行错误提示操作
代码引用
case 4:
printf("退出");break;
default:
printf("输入不合法 请重新输入");break;
程序最后运行情况(拿取款举例)
image.png