#include "stdafx.h" #include <stdlib.h> int _tmain(int argc, _TCHAR* argv[]) { int password = 123;//声明一个变量 不会分配内存空间 使用的时候就分配 int inputPassword = 0;//接收用户输入的密码 int wrongTime = 0;//记录错误的数据 int choice = 0;//记录用户的选择操作 float money = 10000;//总金额 //提示用户输入密码 while(1){ printf("请输入密码:"); scanf("%d",&inputPassword); //判断密码是否相同 if(password==inputPassword){ //接下来的事情 break;}//跳出本层循环do while,而不是简单地跳出if语句 else{ printf("密码错误"); wrongTime++; //判断错误的次数 if (wrongTime == 3){ //退出程序 exit(EXIT_SUCCESS); } } } while (1){ //提示用户选择相关的操作 printf("********************\n"); printf("*****请选择操作*******\n"); printf("1.取款\n"); printf("2.查询\n"); printf("3.更改密码\n"); printf("4.退出\n"); printf("********************\n"); //接收用户选择 scanf("%d",&choice);//此时缓存中为2‘\n‘ switch (choice) { case 1: while(1) { float withdraw = 0; printf("请输入取款金额:%f\n",withdraw); scanf("%f",&withdraw); if(withdraw>money) { printf("余额不足");} else money-=withdraw; printf("取款成功"); break; } //取款 break; case 2: //查询余额 printf("当前余额:%f",money); break; case 3: //更改密码 printf("请输入原始密码:"); scanf("%d",&inputPassword); while(1){ if(inputPassword==password){ printf("请输入新密码:"); scanf("%d",&password); printf("请再次输入新密码"); int newpassword; scanf("%d",&newpassword); while(1){ if(newpassword!=password){ printf("两次密码不一致,请重新输入:"); scanf("%d",&newpassword); break;} } printf("密码修改成功\n"); break; } else printf("密码错误"); } break; case 4: //退出 printf("感谢您的使用,再见!"); exit(EXIT_SUCCESS); break; default:printf("输入错误\n"); break; } //提示用户是否继续操作 printf("是否继续(‘y‘/‘n‘):"); getchar();//将上述输入的‘\n‘拿走,即从缓存中取出 char c = getchar();//等待用户输入字符 if(c ==‘n‘){ printf("感谢使用 再见!"); exit(EXIT_SUCCESS); } } return 0; }
此代码退出时不输出感谢使用,再见
有待修改