模拟菜单 购物买衣服 ----方法:使用 switch多分支语句 和 do-while循环

user_g1t8QEKW

(3)案例:有5家衣服专卖店,每家最多购买3件。用户可以选择离开,

  • 可以买衣服。最后打印总共买了几件衣服。
模拟菜单 选输入不同的数字进入不同的选择

下面是代码


  • @author xiangtao.p

*

  • @Date 2020年10月30日

*/
public class Shopping {

int sum = 0;// 买衣服的数量

public static void main(String[] args) {
    //创建新的购物的对象
    Shopping shop = new Shopping();
    //调用买衣服的方法
    System.out.println("你购买的衣服总数为:" + shop.buyClothes());

}

//买衣服的方法
public int buyClothes() {
    int store1 = 0;// 记录每家商铺购买的衣服数量
    int store2 = 0;
    int store3 = 0;
    int store4 = 0;
    int store5 = 0;
    int choice = 0;// 选择
    int num = 0;// 衣服件数
    Scanner scan = new Scanner(System.in);

    do {
        System.out.println("请选择输入要进入的商铺:1.第一家  == 2.第二家  == 3.第三家 == 4.第四家 == 5.第五家   8)检查购买的衣服总数  9)结束购物  ");
        choice = scan.nextInt();
        String msg = "你进入了第" + choice + "家商铺,请选择购买的衣服件数(0-3)";
        //结束do-while循环的条件 :输入9
        if (choice == 9) {
            break;
        }
        
        switch (choice) {
        case 1:
            System.out.println(msg);
            System.out.println("提示:你在本店可以购买件" + (3 - store1) + "衣服;你目前已经购买了" + sum + "件衣服");
            num = scan.nextInt();
            if (store1 >= 3) {
                System.out.println("购买次数达到上限,请选择其他商铺,谢谢!");
                break;//结束本次break循环,进入下一次do-while循环
            } else if (num > (3 - store1)) {
                System.out.println("你选择的超出了购买上限,欢迎下次再来!");
                break;//结束本次break循环,进入下一次do-while循环
            } else {

                sum += num;// 衣服求和
                store1 += num;// 本店铺购买的衣服累加
                System.out.println("你在第" + choice + "店累计购买了" + store1 + "件衣服,下次还可购买" + (3 - store1) + "件衣服!  "
                        + "\n" + "请继续你的选择");
                break;//结束本次break循环,进入下一次do-while循环
            }
        case 2:
            System.out.println(msg);
            System.out.println("提示:你在本店可以购买件" + (3 - store2) + "衣服;你目前已经购买了" + sum + "件衣服");
            num = scan.nextInt();
            if (store2 >= 3) {
                System.out.println("购买次数达到上限,请选择其他商铺,谢谢!");
                break;
            } else if (num > (3 - store2)) {
                System.out.println("你选择的超出了购买上限,欢迎下次再来!");
                break;
            } else {

                sum += num;
                store2 += num;
                System.out.println("你在第" + choice + "店累计购买了" + store2 + "件衣服,下次还可购买" + (3 - store2) + "件衣服!  "
                        + "\n" + "请继续你的选择");
                break;
            }
        case 3:
            System.out.println(msg);
            System.out.println("提示:你在本店可以购买件" + (3 - store3) + "衣服;你目前已经购买了" + sum + "件衣服");
            num = scan.nextInt();
            if (store3 >= 3) {
                System.out.println("购买次数达到上限,请选择其他商铺,谢谢!");
                break;
            } else if (num > (3 - store3)) {
                System.out.println("你选择的超出了购买上限,欢迎下次再来!");
                break;
            } else {

                sum += num;
                store3 += num;
                System.out.println("你在第" + choice + "店累计购买了" + store3 + "件衣服,下次还可购买" + (3 - store3) + "件衣服!  "
                        + "\n" + "请继续你的选择");
                break;
            }
        case 4:
            System.out.println(msg);
            System.out.println("提示:你在本店可以购买件" + (3 - store4) + "衣服;你目前已经购买了" + sum + "件衣服");
            num = scan.nextInt();
            if (store4 >= 3) {
                System.out.println("购买次数达到上限,请选择其他商铺,谢谢!");
                break;
            } else if (num > (3 - store4)) {
                System.out.println("你选择的超出了购买上限,欢迎下次再来!");
                break;
            } else {

                sum += num;
                store4 += num;
                System.out.println("你在第" + choice + "店累计购买了" + store4 + "件衣服,下次还可购买" + (3 - store4) + "件衣服!  "
                        + "\n" + "请继续你的选择");
                break;
            }
        case 5:
            System.out.println(msg);
            System.out.println("提示:你在本店可以购买件" + (3 - store5) + "衣服;你目前已经购买了" + sum + "件衣服");
            num = scan.nextInt();
            if (store5 >= 3) {
                System.out.println("购买次数达到上限,请选择其他商铺,谢谢!");
                break;
            } else if (num > (3 - store5)) {
                System.out.println("你选择的超出了购买上限,欢迎下次再来!");
                break;
            } else {

                sum += num;
                store5 += num;
                System.out.println("你在第" + choice + "店累计购买了" + store5 + "件衣服,下次还可购买" + (3 - store5) + "件衣服!  "
                        + "\n" + "请继续你的选择");
                break;
            }
        case 8:
            System.out.println("你目前已经购买了" + sum + "件衣服");
            break;
        case 9:

            System.out.println("你已经选择结束购物");
            // return sum;
            break;
        }

        

    } while (true);

    return sum;

}

}

阅读 649

热爱编程

1 声望
0 粉丝
0 条评论

热爱编程

1 声望
0 粉丝
文章目录
宣传栏