需求说明:
编写Java程序, 实现根据用户购买商品总金额, 计算实际支付的金额及所获得的购物券金额。
购买总金额达到或超过 1000元,按 8折优惠,送 200元的购物券;
购买总金额达到或超过 500 元,但未达到 1000 元,按 8.5折优惠,送 100元的购物券;
购买总金额达到或超过 300 元,但未达到 500 元,按 9折优惠,送 70元的购物券;
购买总金额达到或超过 300 元,按 9.5折优惠;
实现思路:
声明变量 sumMoney、price,用于存储购物总金额以及所获得的购物券金额。
通过 Scanner 接收用户输入的购物总金额,并为变量 sumMoney 赋值。
根据优惠活动规则,使用多重 if 结构实现各种分支的计算。
使用 System.out.printf 实现格式化输出运算结果。
实现代码:
import java.util.Scanner; public class MartDemo { public static void main(String[] args) { Scanner sc = new Scanner(System.in); double sumMoney; //实际价格 int price = 0;//购物券金额 System.out.println("请输入购物总金额:"); sumMoney = sc.nextDouble(); //根据优惠规则计算实付款以及获取的购物券金额 if(sumMoney>=1000){ sumMoney *= 0.8; //8 折优惠 price = 200;//200元购物券 }else if(sumMoney>=500){ sumMoney *= 0.85; //8.5 折优惠 price = 100;//100元购物券 }else if(sumMoney>=300){ sumMoney *= 0.9; //9 折优惠 price = 70;//70元购物券 }else{ sumMoney *= 0.95; //9.5 折优惠 } System.out.printf("实际付款金额:%8.2f",sumMoney); System.out.printf("获取购物券金额:%d",price); } }