超市购物小程序
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 部分是判断用户选择购买
商品序列号的分支。
注意:在每次循环中,我们需要读取输入两次:一次是购买商品的序号,另一次是
是否继续购买。
【实现代码】
packagecom.zy;importjava.util.Scanner;publicclassSupermarket{/*
* 模拟商城购物小系统:1.用户选择商品后,后台计算商品价格;
* 2.使用 while 循环实现用户多次购买商品。
*/publicstaticvoidmain(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 =newScanner(System.in);System.out.print("请输入你需要购买商品的序列号:");int i = scanner.nextInt();int amount =0;double money =0;switch(i){case1:System.out.print("请输入你需要购买牙刷的数量:");
amount = scanner.nextInt();
money = amount * toothbrush;System.out.println("你购买了牙刷"+ amount +"支,需要花费"+ money +"元");System.out.println("是否继续购买商品?是(输入Y)/否(输入N)");break;case2:System.out.print("请输入你需要购买毛巾的数量:");
amount = scanner.nextInt();
money = amount * towel;System.out.println("你购买了毛巾"+ amount +"条,需支付"+ money +"元");System.out.println("是否继续购买商品?是(输入Y)/否(输入N)");break;case3:System.out.print("请输入你需要购买水杯的数量:");
amount = scanner.nextInt();
money = amount * cup;System.out.println("你购买了水杯"+ amount +"个,需支付"+ money +"元");System.out.println("是否继续购买商品?是(输入Y)/否(输入N)");break;case4:System.out.print("请输入你需要购买苹果的数量:");
amount = scanner.nextInt();
money = amount * apple;System.out.println("你购买了苹果"+ amount +"个,需要花费"+ money +"元");System.out.println("是否继续购买商品?是(输入Y)/否(输入N)");break;case5: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.运行结果
版权归原作者 MK_滚筒洗衣机 所有, 如有侵权,请联系我们删除。