如何在switch语句中使用循环语句。
程序代码:
import java.util.Scanner;
public class Jintis {
public static void main(String[] args) {
System.out.println("****欢迎进入抽奖系统****");
System.out.println(" 1.注册");
System.out.println(" 2。登陆");
System.out.println(" 3.抽奖");
System.out.println("******************");
Scanner input = new Scanner(System.in); // 添加扫描器
int xz = input.nextInt();// 选择的号码
switch (xz) {
case 1:
int name = 0;
int pssass = 0;
System.out.println("欢迎进入抽奖注册系统");
int cardnumber = 0;
System.out.println("请输入您的帐号:(仅支持数字 !)");
name = input.nextInt(); // 接受用户输入的帐号
System.out.println("请输入您的密码 :(仅支持数字!)");
pssass = input.nextInt(); // 接受用户输入的密码
int max = 9999;
int min = 1000;
cardnumber = (int) (Math.random() * (max - min)) + min;// 创建随机会员号码
System.out.println("注册成功您的帐户名是:" + name + "您的密码:" + pssass
+ "您的会员卡号是:" + cardnumber);// 打印客户的帐密码及会员密码
name=name;
pssass=pssass;
break;// 跳出第一次选择
case 2:
Object anwer = null;
do{
System.out.println("请输入帐号:");
int yonhu = input.nextInt();
System.out.println("请输入您的密码 :");
int mima = input.nextInt();
if (yonhu == name && mima == pssass) {// 判断用户的帐号和密码是否正确
System.out.println("登陆成功");}
}while(!"y".equals(anwer));
System.out.println("是否从新登录?(y/n) ");
break;
case 3:
break;
default:
System.out.println("输入错误,系统退出");
break;
}
}
}
我想在第一次选择语句结束后返回主菜单继续选择注册登录该如何插入循环语句,如何选择循环语句。
public class Jintis {
public static void main(String[] args) {
System.out.println("****欢迎进入抽奖系统****");
System.out.println(" 1.注册");
System.out.println(" 2。登陆");
System.out.println(" 3.抽奖");
System.out.println("******************");
Scanner input = new Scanner(System.in); // 添加扫描器
int xz = input.nextInt();// 选择的号码
switch (xz) {
case 1:
int name = 0;
int pssass = 0;
System.out.println("欢迎进入抽奖注册系统");
int cardnumber = 0;
System.out.println("请输入您的帐号:(仅支持数字 !)");
name = input.nextInt(); // 接受用户输入的帐号
System.out.println("请输入您的密码 :(仅支持数字!)");
pssass = input.nextInt(); // 接受用户输入的密码
int max = 9999;
int min = 1000;
cardnumber = (int) (Math.random() * (max - min)) + min;// 创建随机会员号码
System.out.println("注册成功您的帐户名是:" + name + "您的密码:" + pssass
+ "您的会员卡号是:" + cardnumber);// 打印客户的帐密码及会员密码
name=name;
pssass=pssass;
break;// 跳出第一次选择
case 2:
Object anwer = null;
do{
System.out.println("请输入帐号:");
int yonhu = input.nextInt();
System.out.println("请输入您的密码 :");
int mima = input.nextInt();
if (yonhu == name && mima == pssass) {// 判断用户的帐号和密码是否正确
System.out.println("登陆成功");}
}while(!"y".equals(anwer));
System.out.println("是否从新登录?(y/n) ");
break;
case 3:
break;
default:
System.out.println("输入错误,系统退出");
break;
}
}
}
我想在第一次选择语句结束后返回主菜单继续选择注册登录该如何插入循环语句,如何选择循环语句。
----------------解决方案--------------------------------------------------------
如何把第一个选择语句中的name和pssass的值弄到在第二个选择语句中可以用?求大虾帮忙
----------------解决方案--------------------------------------------------------
程序代码:
import java.util.Scanner;
public class Jintis {
public static void main(String[] args) {
Scanner input = new Scanner(System.in); // 添加扫描器
int xz = input.nextInt();// 选择的号码
int name = 0;
int pssass = 0;
while (true) {
System.out.println("****欢迎进入抽奖系统****");
System.out.println(" 1.注册");
System.out.println(" 2。登陆");
System.out.println(" 3.抽奖");
System.out.println(" 4.退出");
System.out.println("******************");
switch (xz) {
case 1:
name = 0;
pssass = 0;
System.out.println("欢迎进入抽奖注册系统");
int cardnumber = 0;
System.out.println("请输入您的帐号:(仅支持数字 !)");
name = input.nextInt(); // 接受用户输入的帐号
System.out.println("请输入您的密码 :(仅支持数字!)");
pssass = input.nextInt(); // 接受用户输入的密码
int max = 9999;
int min = 1000;
cardnumber = (int) (Math.random() * (max - min)) + min;// 创建随机会员号码
System.out.println("注册成功您的帐户名是:" + name + "您的密码:" + pssass
+ "您的会员卡号是:" + cardnumber);// 打印客户的帐密码及会员密码
name=name;
pssass=pssass;
break;// 跳出第一次选择
case 2:
Object anwer = null;
do{
System.out.println("请输入帐号:");
int yonhu = input.nextInt();
System.out.println("请输入您的密码 :");
int mima = input.nextInt();
if (yonhu == name && mima == pssass) {// 判断用户的帐号和密码是否正确
System.out.println("登陆成功");}
}while(!"y".equals(anwer));
System.out.println("是否从新登录?(y/n) ");
break;
case 3:
break;
case 4: return; // Exit
default:
System.out.println("输入错误,系统退出");
break;
}
}
}
}
public class Jintis {
public static void main(String[] args) {
Scanner input = new Scanner(System.in); // 添加扫描器
int xz = input.nextInt();// 选择的号码
int name = 0;
int pssass = 0;
while (true) {
System.out.println("****欢迎进入抽奖系统****");
System.out.println(" 1.注册");
System.out.println(" 2。登陆");
System.out.println(" 3.抽奖");
System.out.println(" 4.退出");
System.out.println("******************");
switch (xz) {
case 1:
name = 0;
pssass = 0;
System.out.println("欢迎进入抽奖注册系统");
int cardnumber = 0;
System.out.println("请输入您的帐号:(仅支持数字 !)");
name = input.nextInt(); // 接受用户输入的帐号
System.out.println("请输入您的密码 :(仅支持数字!)");
pssass = input.nextInt(); // 接受用户输入的密码
int max = 9999;
int min = 1000;
cardnumber = (int) (Math.random() * (max - min)) + min;// 创建随机会员号码
System.out.println("注册成功您的帐户名是:" + name + "您的密码:" + pssass
+ "您的会员卡号是:" + cardnumber);// 打印客户的帐密码及会员密码
name=name;
pssass=pssass;
break;// 跳出第一次选择
case 2:
Object anwer = null;
do{
System.out.println("请输入帐号:");
int yonhu = input.nextInt();
System.out.println("请输入您的密码 :");
int mima = input.nextInt();
if (yonhu == name && mima == pssass) {// 判断用户的帐号和密码是否正确
System.out.println("登陆成功");}
}while(!"y".equals(anwer));
System.out.println("是否从新登录?(y/n) ");
break;
case 3:
break;
case 4: return; // Exit
default:
System.out.println("输入错误,系统退出");
break;
}
}
}
}
在外层加一个循环,增加一个退出选项,case 4:里用return;来结束main导致这个程序也结束,在两个case之间使用变量,可以把这些变量定义到一个外层,这样在两个case中都是有效的。
不过我觉得你这程序没什么意义,还有LZ的基础还需要加强。
[ 本帖最后由 lz1091914999 于 2012-10-2 23:42 编辑 ]
----------------解决方案--------------------------------------------------------
问题解决了记得结贴!
----------------解决方案--------------------------------------------------------