第二季的滴滴打车的问题

import java.util.Scanner;

public class Test {


/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

CarRental target=new CarRental();

target.way();

    Scanner s=new Scanner(System.in);

    int x=s.nextInt();

if(x==1){

System.out.println("序号    汽车名称   租金    容量");

CarRental target1=new Car();

target1.way();

}else

System.out.println("谢谢使用大大租车");

System.out.println("请输入您要租车的数量");

int a=s.nextInt();

for(int i=1;i<=a;i++){

int sum = 0;

System.out.println("请输入"+"第"+i+"辆车的序号:");

int c=s.nextInt();

switch(c){

case 1: c=500;

break;

case 2: c=400;

break;

case 3:c=450;

break;

case 4: c=800;

break;

case 5: c=400;

break;

case 6: c=1000;

break;

case 7:sum=c+sum;

}

sum=sum+c;

}

sum=sum*d;

System.out.println(sum);


System.out.println("请输入你要租的天数:");

int d=s.nextInt();

System.out.println("你的账单是:");

sum=sum*d;

System.out.println(sum);

}

}

代码是上面的 我想计算租车的费用最后两行代码显示错误,这是一个问题,还有我的循环体这样写有错误吗?

qq_BullshitGame_0
浏览 1556回答 1
1回答

SilenceDean

for(int i=1;i<=a;i++){ int sum = 0; System.out.println("请输入"+"第"+i+"辆车的序号:"); int c=s.nextInt(); switch(c){ case 1: c=500; break; case 2: c=400; break; case 3:c=450; break; case 4: c=800; break; case 5: c=400; break; case 6: c=1000; break; case 7:sum=c+sum; } sum=sum+c; }问题在for循环里面,每次循环,你都把sum初始化了,把int sum = 0;放在for循环外面int sum = 0; for(int i=1;i<=a;i++){ System.out.println("请输入"+"第"+i+"辆车的序号:"); int c=s.nextInt(); switch(c){ case 1: c=500; break; case 2: c=400; break; case 3:c=450; break; case 4: c=800; break; case 5: c=400; break; case 6: c=1000; break; case 7:sum=c+sum; } sum=sum+c; }另外,最后这块代码sum=sum*d是复制的有问题么,重复出现了2次sum=sum*d; System.out.println(sum); System.out.println("请输入你要租的天数:"); int d=s.nextInt(); System.out.println("你的账单是:"); sum=sum*d; System.out.println(sum);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java