【java】超市购物小程序

超市购物小程序

1.任务描述
编写一个超市购物程序,在一家超市有牙刷、毛巾、水杯、苹果和香蕉五种商品,
商品价格如下表所示。
在这里插入图片描述
程序启动后,首先显示以上 5 种商品。
然后提示用户输入商品序列号进行商品购买,用户输入购买数量后计算出所需要花
费的钱,一次购买结束后,需要用户输入“Y”或“N”,“Y”代表继续购买,“N”代表
购物结束。
在这里插入图片描述
【任务目标】
 学会分析“超市购物 ”程序的实现思路。
 根据思路独立完成“超市购物 ”的源代码编写、编译及运行。
 掌握在程序中使用 while/do…while 循环结构和 switch 选择分支结构语句进行运算
操作。
【实现思路】
(1)从运行结果可以看出,我们需要先定义 5 个商品的价格,double 类型,再打印
出 5 种商品的价格。
(2)从运行结果可以看出,这里我们让用户填写购买商品的序列号以及购买的数
量,需要使用到 java.util.Scanner 类,
(3)从运行结果可以看出,我们循环了选择购买的条件语句,这里使用
while/do…while 循环的内部,嵌套一个 switch 语句可以达到我们的目的,我们需要
使用 while 循环 switch 的选择结构,而 switch 语句中的 case 部分是判断用户选择购买
商品序列号的分支。
注意:在每次循环中,我们需要读取输入两次:一次是购买商品的序号,另一次是
是否继续购买。

【实现代码】

package com.zy;
import java.util.Scanner;
public class Supermarket {
    
    
    /*
     * 模拟商城购物小系统:1.用户选择商品后,后台计算商品价格;
     * 2.使用 while 循环实现用户多次购买商品。
     */
    public static void main(String[] args) {
    
    
        double toothbrush = 8.8; //牙刷价格
        double towel = 10.0;     //毛巾价格
        double cup = 18.8;       //水杯价格
        double apple = 12.5;     //苹果价格
        double banana = 15.5;    //香蕉价格
        System.out.println("--- 黑马小商城 ---");
        System.out.println("1.牙刷的价格为:" + toothbrush + "元");
        System.out.println("2.毛巾的价格为:" + towel + "元");
        System.out.println("3.水杯的价格为:" + cup + "元");
        System.out.println("4.苹果的价格为:" + apple + "元");
        System.out.println("5.香蕉的价格为:" + banana + "元");

        String choice = "Y";
        do {
    
    
            Scanner scanner = new Scanner(System.in);
            System.out.print("请输入你需要购买商品的序列号:");
            int i = scanner.nextInt();
            int amount = 0;
            double money = 0;
            switch (i) {
    
    
                case 1:
                    System.out.print("请输入你需要购买牙刷的数量:");
                    amount = scanner.nextInt();
                    money = amount * toothbrush;
                    System.out.println("你购买了牙刷"+ amount + "支,需要花费" + money + "元");
                    System.out.println("是否继续购买商品?是(输入Y)/否(输入N)");
                    break;
                case 2:
                    System.out.print("请输入你需要购买毛巾的数量:");
                    amount = scanner.nextInt();
                    money = amount * towel;
                    System.out.println("你购买了毛巾" + amount + "条,需支付" + money + "元");
                    System.out.println("是否继续购买商品?是(输入Y)/否(输入N)");
                    break;
                case 3:
                    System.out.print("请输入你需要购买水杯的数量:");
                    amount = scanner.nextInt();
                    money = amount * cup;
                    System.out.println("你购买了水杯" + amount + "个,需支付" + money + "元");
                    System.out.println("是否继续购买商品?是(输入Y)/否(输入N)");
                    break;
                case 4:
                    System.out.print("请输入你需要购买苹果的数量:");
                    amount = scanner.nextInt();
                    money = amount * apple;
                    System.out.println("你购买了苹果"+ amount + "个,需要花费" + money + "元");
                    System.out.println("是否继续购买商品?是(输入Y)/否(输入N)");
                    break;
                case 5:
                    System.out.print("请输入你需要购买香蕉的数量:");
                    amount = scanner.nextInt();
                    money = amount * banana;
                    System.out.println("你购买了香蕉"+ amount + "个,需要花费" + money + "元");
                    System.out.println("是否继续购买商品?是(输入Y)/否(输入N)");
                    break;
            }
            System.out.print("需要继续购买请输入 Y,否则输入 N:");
            choice = scanner.next();
        } while (choice.toUpperCase().equals("Y"));
        System.out.println("期待您的下次光临!");
    } }

2.运行结果
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_52703008/article/details/126200440
今日推荐