复制下面的代码粘贴到代码编辑区即可.
import java.util.Scanner;
public class 银行取钱系统进阶 {
public static void main(String[] args) {
double chushi_je = 1000;//卡内初始值
int kahao = 123;//卡号
String name = "张三";
Scanner s = new Scanner(System.in);//定义扫描器
int js_kahao;//接收输入的卡号
int xuanze;//选择
int cqkjine;//接受存取款
int mima = 520;//密码
int shifou_jixu;//是否继续存款或取款
int js_mima;//接收用户输入的密码
while(true){
boolean flag = true;
System.out.println("欢迎进入银行系统,请输入你的卡号");
js_kahao = s.nextInt();//接收用户收入卡号 System.out.println("欢迎进入银行系统,请输入绿卡密码");
js_mima = s.nextInt();//接收用户收入密码
if(kahao != js_kahao && mima != js_mima)//卡号和密码输入都不正确
{
System.out.println("您的卡号或密码输入不正确,请重新输入");
continue;
}
else//卡号输入正确
{
System.out.println("您的用户名为:"+name+",卡上金额为:"+chushi_je
+"存款请按1,取款请按2.");
xuanze = s.nextInt();//接收用户收
if(xuanze != 1 && xuanze != 2)//如果输入的不是1也不是2
{
System.out.println("选择错误,只能选择1或2");//提示错误 退出系统重新输入
}
else//如果选择的是1或者2
{
while (flag) {
if(xuanze == 1)//如果选择了存款
{
System.out.println("请输入存款金额");
cqkjine = s.nextInt();//接受用户输入的存款金额
if (cqkjine <= 0) {
System.out.println("输入无效,请重新输入");//如果存款小于等于0提示等于0 后面的代码也不继续执行 直接回到最外面的while执行
}
else {
chushi_je += cqkjine;
System.out.println("存款成功,您的卡里现在有"+ chushi_je + "元。");
System.out.println("继续存款请按1,退出请按0");
}
while(true)//让条件一直成立 一直循环括号内代码
{
shifou_jixu = s.nextInt();
if (shifou_jixu > 1 || shifou_jixu < 0) {
System.out.println("输入不合法 你只能输入1或者0来进行选择");
} else if (shifou_jixu == 1) {
flag = true;//把上面一层的flag赋值为true表示上面的那层while循环 也就是继续输入
break;//结束当前while循环
} else {
flag = false;//如果选择的是0 则不执行外面的while 退出到最外面的while
break;//结束当前循环
}
}
}
else
{
while (flag) {
System.out.println("请输入取款金额");
cqkjine = s.nextInt();
if (cqkjine > chushi_je) {
System.out.println("对不起余额不足,请重新取款");
} else {
chushi_je -= cqkjine;
System.out.println("取款成功,您的卡里现在有"
+ chushi_je + "元。");
System.out.println("继续取款请按1,退出请按0");
}
while(true)
{
shifou_jixu = s.nextInt();
if (shifou_jixu > 1 || shifou_jixu < 0)
{
System.out.println("输入不合法 你只能输入1或者0来进行选择");
}
else if (shifou_jixu == 1)
{
flag=true;
break;
} else
{
flag=false;
break;
}
}
}
}
}
}
}
}
}
}