请问这个代码哪里错了

q231585427 2010-09-25 02:00:36
import java.util.*;
public class ss16 {
public static void main(String[] args) {
double sum;
double[] num=new double[10];
Scanner input=new Scanner(System.in);
for(int i=0;i<10;i++){
num[i]=input.nextDouble();
}
for(int j=0;j<num.length-1;j++){
for(int k=1;k<num.length;k++);
sum=num[j]+num[k];
}
System.out.println(sum);
}
}

k那里显示错误
我是菜鸟。。。正在学java,刚学到数组
这是书上的题目,某人从超市购买了10件物品,编写一个程序,用于接收每件商品的价格,计算应付总金额并输出。
...全文
92 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
q231585427 2010-09-25
  • 打赏
  • 举报
回复
额,懂了,原来我是画蛇添足多此一举,还有个地方大括号打成;了……,谢谢你们,又学了一点知识= =
wei_wxx 2010-09-25
  • 打赏
  • 举报
回复
import java.util.*;

public class ss16 {
public static void main(String[] args) {
double sum = 0;
double[] num = new double[10];
Scanner input = new Scanner(System.in);
for (int i = 0; i < 10; i++) {
num[i] = input.nextDouble();
}
for (int j = 0; j < num.length; j++) {
sum = sum + num [j];
}
System.out.println(sum);
}
}
wei_wxx 2010-09-25
  • 打赏
  • 举报
回复
但是你这个程序貌似有问题。不知道你想干嘛呢
wei_wxx 2010-09-25
  • 打赏
  • 举报
回复
for(int j=0;j<num.length-1;j++){
for(int k=1;k<num.length;k++);
把后面的;改成{
然后在你结尾在加个}
kingdax1 2010-09-25
  • 打赏
  • 举报
回复
for(int k=1;k<num.length;k++);
sum=num[j]+num[k];
}

";"改成"{"
zhuzeitou 2010-09-25
  • 打赏
  • 举报
回复
for(int k=1;k<num.length;k++);
sum=num[j]+num[k];
}
当k=num.length的时候数组越界了

而且这里不需要这个循环,直接sum+=num[j]就可以
dr_lou 2010-09-25
  • 打赏
  • 举报
回复
for(int j=0;j<num.length-1;j++){
for(int k=1;k<num.length;k++);
sum=num[j]+num[k];
}



一层循环即可


for(int k=0;k<num.length;k++);
sum += num[k];
}

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧