为了账号安全,请及时绑定邮箱和手机立即绑定

这样做对不对

int i=1

do{

if(i%3!=0){

sum=sum+i;

i++;

}while(i<=100);

System.out.println("1到100之间不能被3整除的数之和为:" +sum);

}


正在回答

5 回答

sum没定义,if范围错了

int i=1;

    int sum = 0;

do{

if(i%3!=0)

sum=sum+i;

i++;

}while(i<=100);

System.out.println("1到100之间不能被3整除的数之和为:" +sum);

你参考下看看

0 回复 有任何疑惑可以回复我~
#1

汇雨落尘珠 提问者

非常感谢!这下对了
2016-05-29 回复 有任何疑惑可以回复我~

不对,首先你的if少了一个括号。另外,do里面是执行的,while是条件,do里面再加个判断是几个意思?说不出具体为什么不行,水平有限。建议用这种方法,更简洁有效。

int sum=0;

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

    if(i%3==0){

    continue;

    }

    sum+=i;

    }

    System.out.println("1到10之间不能被3整除的数之和为:" +sum);


0 回复 有任何疑惑可以回复我~

不对,int后面没分号,

i++不能放在判断语句内,不然会陷入死锁。

1 回复 有任何疑惑可以回复我~

sum 未声明;需要 int sum=0; 

i++应该放在判断体if以外

正解:

int i=1;

int sum=0;

do{

if(i%3!=0)

{

    sum=sum+i;

}

i++;

}while(i<=100);

System.out.println("1到100之间不能被3整除的数之和为:" +sum);

}


1 回复 有任何疑惑可以回复我~
#1

汇雨落尘珠 提问者

谢谢,一直没有注意到i++放错了位置
2016-05-29 回复 有任何疑惑可以回复我~

对sum要定义

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1165458    人
  • 解答问题       17585    个

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

进入课程

这样做对不对

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信