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

这段代码最后哪里错了

public static void main(String[] args) { for(int i=1,sum=0;(i<=100) && (i%3!=0);i++){ sum=sum+i; } System.out.println("1到100之间不能被3整除的数之和为:" + sum); 最后变量输出    sum  为什么不行

正在回答

8 回答

sum为局部变量,只能在循环体内有效。

最后输出用的sum变量为全局变量,sum前面未定义,无法使用。

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

("1到100之间不能被3整除的数之和为:" + sum)  这里  1到100之间不能被3整除的数之和为 是可是直接在运行结果了显示的。但是要显示sum的内容  必须要加 + 

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

这里的+ 是连接符  没有实际意义!  

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

666666

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

package hello;


public class text09 {

public static void main(String[] args){

int sum=0;

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

if(i%3!=0){

sum=sum+i;

}

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

}


}


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

public static void main(String[] args) 

{   

int sum=0;

for(int i=1;i<=100;i++)

      {

if(i%3!=0)

sum=sum+i;

      }

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


应该这样,一个是注意变量作用于问题。另外一个注意当i=3的时候,i%3会等于0,这个时候for循环判断条件将不满足同时就不会执行循环体,将会直接数据1和2的和,我觉得将是否能被3整除移植到for循环体里面判断比较好

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

这可能与变量的作用范围有关,

我知道有个全局变量;和局部变量;

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

首先当i=3时,循环的判断条件错误,导致循环无法继续下去,所以判断条件建议改为if判断句。第二就是你的sum是局部变量,除非你声明时把它设为全局变量

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

举报

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

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

进入课程

这段代码最后哪里错了

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