import java.util.Scanner;
public class 升级购物结算_待处理 {
public static void main(String[] args) {
System.out.println("***********************************************");
System.out.println("请选择购买的商品编号:");
String ts = "T恤";
String wqx = "网球鞋";
String wqp = "网球拍";
System.out.println("1." + ts + "2." + wqx + "3." + wqp);
System.out.println("***********************************************");
Scanner input = new Scanner(System.in);
int tsprice = 245;
int wqxprice = 320;
int wqpprice = 280;
int tssum;
int wqxsum;
int wqpsum;
String answer = "y";
while ("y".equals(answer)) {
System.out.println("请输入商品编号:");
int number = input.nextInt();
System.out.println("请输入购买数量");
int sum = input.nextInt();
tssum = sum * tsprice;
wqxsum = sum * wqxprice;
wqpsum = sum * wqpprice;
switch (number) {
case 1:
System.out.print(ts + "$" + tsprice + "\t");
System.out.print("数量" + sum + "\t");
System.out.println("合计$" + tssum);
break;
case 2:
System.out.print(wqx + "$" + wqxprice + "\t");
System.out.print("数量" + sum + "\t");
System.out.println("合计$" + wqxsum);
break;
case 3:
System.out.print(wqp + "$" + wqpprice + "\t");
System.out.print("数量" + sum + "\t");
System.out.println("合计$" + wqpsum);
break;
}
System.out.println("是否继续(y/n)?");
answer = input.next();
}
double zk = 0.8;
System.out.println("折扣:" + zk);
System.out.println("应付金额:");
System.out.println("实付金额:");
int money = input.nextInt();
System.out.println("找钱:");
}
}
就是怎么根据while循环里输入的内容进行结算?
比如,在循环里面已经计算好了,不继续的时候这时跳出循环,从而进行结算.
mai 的钱累加不就行了
tssum wqxsum wqpsum 这三个值相加就ok了吧 他们初始值都是0
我是这样想的(不知道还有没有更简便的方法哈):
先把tssum wqxsum wqpsum这三个值设置成0;
然后再在每一个对应的case下面写
tssum = sum * tsprice;
wqxsum = sum * wqxprice;
wqpsum = sum * wqpprice;
在switch的末尾添上total = tssum + wqxsum + wqpsum
在while循环后面加一行代码就行了,注意不要写在循环里面
int total = tssum + wqxsum + wqpsum //接收卖的商品的总价
那个是这样的,当选择1的时候只结算1的钱,
选择2的时候只选择2的钱,
选择3的时候只选择3的钱,
是这样,不是每个的钱的总和.
还有把那个total的语句放在while是可以,
但我的意思是,当选择(y/n) n时,会弹出购物结算的信息,不是过早的显示出来.
也就是没有选择n时,是不显示出来结算信息的