标题:如何在switch语句中使用循环语句。
只看楼主
xiao金刚
Rank: 2
来 自:广东
等 级:论坛游民
威 望:4
帖 子:67
专家分:38
注 册:2010-9-13
结帖率:90.91%
已结贴  问题点数:20 回复次数:3 
如何在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;

        }
    }
}


我想在第一次选择语句结束后返回主菜单继续选择注册登录该如何插入循环语句,如何选择循环语句。
搜索更多相关主题的帖子: 抽奖 如何 系统 
2012-10-02 17:37
xiao金刚
Rank: 2
来 自:广东
等 级:论坛游民
威 望:4
帖 子:67
专家分:38
注 册:2010-9-13
得分:0 
如何把第一个选择语句中的name和pssass的值弄到在第二个选择语句中可以用?求大虾帮忙
2012-10-02 17:39
lz1091914999
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:四川
等 级:贵宾
威 望:37
帖 子:2011
专家分:5959
注 册:2010-11-1
得分:20 
程序代码:
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;

            }
        }
    }
}

在外层加一个循环,增加一个退出选项,case 4:里用return;来结束main导致这个程序也结束,在两个case之间使用变量,可以把这些变量定义到一个外层,这样在两个case中都是有效的。

不过我觉得你这程序没什么意义,还有LZ的基础还需要加强。

[ 本帖最后由 lz1091914999 于 2012-10-2 23:42 编辑 ]

My life is brilliant
2012-10-02 23:30
lz1091914999
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:四川
等 级:贵宾
威 望:37
帖 子:2011
专家分:5959
注 册:2010-11-1
得分:0 
问题解决了记得结贴!

My life is brilliant
2012-10-02 23:44



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-382452-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.578289 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved