int main(){
int old = 123;//原始密码
int xin = 0;//用户输入密码
//欢迎界面
printf("**************************\n");
printf(" 欢迎使用中国农行\n");
printf("**************************\n");
//输入密码
printf("请输入密码:");
for(int i = 0;i < 3;i ++){
scanf("%d",&xin);
//判断密码是否正确
if(xin == old){
break;
}//密码正确
if(i == 2){
printf("\n密码错误次数太多请联系银行工作人员!");
return 1;
/*注意这里使用的不是break,因为break仅仅是跳出for循环还会继续执行for循环外的内容,而此时密码输入错误需要停止执行整个函数,因此用到的是return(注意return不是解释一个程序而是结束一个函数)*/
}
printf("密码错误,请重新输入:");
}
//密码正确的后续步骤
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){
case 1: //存款
int temp;
printf("请输入存款金额:");
scanf("%d", &temp);
total += temp;
//total = 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\n",total);
break;
}
}
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("密码设置成功!\n");
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;
}
此代码主要是分情况,为了方便检查和阅读最好做好注释。写代码要一步一步来不要急于求成,要随时测试避免出现错误。