java 输入一正整数repeat,做repeat次运算:读入一批正整数(以0或负数为结束标志),求其中奇数和~

importjava.util.Scanner;publicclassTest40008{publicstaticvoidmain(Stringargs[]){intri... import java.util.Scanner;
public class Test40008 {
public static void main(String args[]){
int ri,repeat;
int x ,sum;
Scanner in=new Scanner(System.in);
repeat=in.nextInt();
for(ri=1;ri<=repeat;ri++)
x=in.nextInt();
/*---*/

sum=0;
while(x>0)
{if(x%2==1)
sum=sum+x;
x=in.nextInt();

}

System.out.println(sum);
}
}
【不知道为什么 在eclipse里显示:x未初始化.。我尝试赋值为0,然后输入一批数比如 1 3 90 7 0,总没有把1算进去...】
没事儿了。我自己知道了 。是人傻,题目输错了 for(ri=1;ri<=repeat;ri++)后面的{ }木有加上。。。
展开
 我来答
wchyumo2011
2015-08-27 · TA获得超过2万个赞
知道大有可为答主
回答量:5810
采纳率:79%
帮助的人:2858万
展开全部

在while判断x之前先获得一个x值:

import java.util.Scanner;

public class Test40008  {
public static void main(String args[]) {
int ri, repeat;
int x = 0, sum;
Scanner in = new Scanner(System.in);
/*---注释掉没用的
repeat = in.nextInt();
for (ri = 1; ri <= repeat; ri++)
x = in.nextInt();
---*/

sum = 0;
x = in.nextInt();/////////////////
while (x > 0) {
if (x % 2 == 1)
sum = sum + x;
x = in.nextInt();

}

System.out.println(sum);
}
}
追问
抱歉啊 ~ 忘了说了~~我的/*---*/以前的部分是题目自带的,不能改动的~~~  我已经知道哪里错了 还是谢谢你哦
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式