入门可以模拟写的C语言,C语言入门开发--简单模拟ATM机功能

这是一个简单的ATM机模拟程序,用户可以进行存款、取款、查询余额和更改密码等操作。程序首先要求输入密码,连续三次错误将退出。密码正确后,用户可以选择不同功能,每次操作后询问是否继续。程序使用了if、for和switch语句来实现流程控制。
摘要由CSDN通过智能技术生成

5658af98638b

目标

在电脑上简单运行ATM机存款、取款、查询余额等功能。

5658af98638b

思路

首页面:输入密码,假如密码错误,则重新输入密码,密码错误次数达3次,则退出程序。密码正确,则进入选择页面。

选择页面:分别为 存款、取款、查询余额、更改密码、退出 5个选项。

在完成每个选项的内容后,需要继续进行选择是否继续,是则重新进入选择页面,否则退出程序。

5658af98638b

使用的函数

if函数:在需要判断的地方出现。

for函数:该函数主要用于需要循环的部分,例如:

1.在首页面输入密码错误时,则需要重新输入密码,若输错3次则跳出循环。

5658af98638b

int wrongTime = 1; int input;

switch函数: 在选择页面时,用于选择选项。

scanf("%d",&choice);

//判断操作

switch(choice){ // int choice;

case 1: //存款

int temp;

printf("请输入存款金额:");

scanf("%d",&temp);

total += temp;

printf("存款成功!可用余额为:%d\n",total);

break;

case 2: //取款

int temp2;

for(;1 < 2;) {

printf("请输入取款金额:");

scanf("%d",&temp2);

if(temp2 > total){

printf("余额不足");

}else{

total -= temp2;

printf("取款成功,余额为%d",total);

}

break;

}

case 3: //查询余额

printf("当前余额为:%d\n",total);

break;

case 4: //更改密码

int n1;

int n2;

for(;1 < 2;){

printf("请输入新密码:");

scanf("%d",&n1);

printf("请确认新密码:");

scanf("%d",&n2);

if(n1 == n2){

printf("密码设置成功!");

old = n1;

break;

} else{

printf("两次输入不一致! ");

}

}

break;

default: //退出

exit(EXIT_SUCCESS); //exit(EXIT_FAILURE);

break;

}

因为在完成一个选项的内容后,都需要用户选择是否继续,所以可以在switch区域后加一个for函数。

//提示是否继续操作

for(;1 < 2;){

printf("是否继续(y/n):");

getchar(); //清除缓存区里的内容

scanf("%c",&goon);

if(goon == 'y' ){

break;

}

if(goon == 'n');{

exit(EXIT_SUCCESS);

}

printf("输入无效 ");

}

5658af98638b

该程序的所有代码为:

#include

#include

int main(){

int old = 123; //原始密码

int input ;

int wrongTime = 3;

int total = 1000; //余额

printf("----------------------\n");

printf(" 欢迎使用建设银行 \n");

printf("----------------------\n");

printf(" 请输入密码:");

for(int i = 1;i <= wrongTime; i++){

scanf("%d",&input); //接受用户输入的密码

if(old == input){

break; //密码正确,跳转页面

}

if(i == wrongTime){ //判断密码错误的次数

printf("密码错误次数过多,请联系客服\n");

return 0;

}

printf("密码错误,请重新输入:\n");

}

int choice; //接受用户是否继续的输入

char goon;//是否继续

for(;1 < 2;){

//主界面

printf("-------------------\n");

printf(" 1.存款 \n");

printf(" 2.取款 \n");

printf(" 3.查询余额 \n");

printf(" 4.更改密码 \n");

printf(" 5.退出 \n");

printf("-------------------\n");

//提示用户选择

printf("请选择操作:");

scanf("%d",&choice);

//判断操作

switch(choice){ // int choice;

case 1: //存款

int temp;

printf("请输入存款金额:");

scanf("%d",&temp);

total += temp;

printf("存款成功!可用余额为:%d\n",total);

break;

case 2: //取款

int temp2;

for(;1 < 2;) {

printf("请输入取款金额:");

scanf("%d",&temp2);

if(temp2 > total){

printf("余额不足");

}else{

total -= temp2;

printf("取款成功,余额为%d",total);

}

break;

}

case 3: //查询余额

printf("当前余额为:%d\n",total);

break;

case 4: //更改密码

int n1;

int n2;

for(;1 < 2;){

printf("请输入新密码:");

scanf("%d",&n1);

printf("请确认新密码:");

scanf("%d",&n2);

if(n1 == n2){

printf("密码设置成功!");

old = n1;

break;

} else{

printf("两次输入不一致! ");

}

}

break;

default: //退出

exit(EXIT_SUCCESS); //exit(EXIT_FAILURE);

break;

}

//提示是否继续操作

for(;1 < 2;){

printf("是否继续(y/n):");

getchar();

scanf("%c",&goon);

if(goon == 'y' ){

break;

}

if(goon == 'n');{

exit(EXIT_SUCCESS);

}

printf("输入无效 ");

}

}

return 0;

}

5658af98638b

5658af98638b

展示图

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值