题目4(综合)
某商场购物可以打折,具体规则如下:
普通顾客购不满100元不打折,满100元打9折;
会员购物不满200元打8折,满200元打7.5折;
不同打折规则不累加计算。
请根据此优惠计划进行购物结算,键盘录入顾客的类别(0表示普通顾客,1表示会员)和购物的折前金额(整数即可),输出应付金额(小数类型)。
训练提示
-
使用什么方式让用户输入内容?
-
使用哪种if语句的格式对信息作出判断?
解题方案
-
使用Scanner键盘录入和if..else判断语句的嵌套使用来完成。
-
键盘录入会员类别和购物金额。
-
先使用if-else判断顾客类别。
-
在不同的顾客类别中再使用if-else语句判断购物金额。
-
输出结果。
上代码:
public static void main(String[] args) { /* * 某商场购物可以打折,具体规则如下: 普通顾客购不满100元不打折,满100元打9折; 会员购物不满200元打8折,满200元打7.5折; 不同打折规则不累加计算。 请根据此优惠计划进行购物结算,键盘录入顾客的类别(0表示普通顾客,1表示会员)和 购物的折前金额(整数即可),输出应付金额(小数类型)。 * */ /* * 分析 * <100 不打折 >=100 0.9 * <200 0.8 >=200 7.5 * */ Scanner sc = new Scanner(System.in); double price=0; //提示用户,是普通顾客还是会员 System.out.println("是会员输入数字:1"+"\t"+"是普通顾客输入:0"); int n1 = sc.nextInt(); //提示用户消费多少金额 System.out.println("你总共消费多少元:"); double n2 = sc.nextDouble(); if(n1 ==0 && n2<100) { price=n2; System.out.println("你是普通顾客,商品金额小于100元,不打折!"+"你需要支付"+price+"元"+"\n"); //System.out.println("支付成功!"); }else if(n1==0 && n2>=100){ price=n2*0.9; System.out.println("你是普通顾客,商品金额大于100元,打九折!"+"你需要支付"+price+"元"); }else if(n1 ==1 && n2<200) { price=n2*0.8; System.out.println("你是会员,商品金额小于200元,打八折!"+"你需要支付"+price+"元"); }else if(n1==1 && n2>=200) { price=n2*0.75; System.out.println("你是会员,商品金额大于200,打七五折!"+"你需要支付"+price+"元"); } } }