题目是不是出错了
不能被3整除的数应该是i%3!=0 怎么会是i%3=0 这不是刚好相反
不能被3整除的数应该是i%3!=0 怎么会是i%3=0 这不是刚好相反
2019-07-25
continue的意思是先跳出,就是i%3==0的时候停止,不进行sum += i,然后下一次再继续。
比如i=2时,2%3==0为假,不执行continue,执行sum+=i,现在sum=3,这次循环结束,下一次循环,这时i=3,3%3==0为真,就会执行continue跳出,不会执行sum+=i,因此能被3整除的数字就不会被包含进求和运算里,i=4时,(这点就是和break不同的地方,每次break之后都会重新赋值,比如上个练习for(n=2;m>n;n++){if(m%n==0){ break;}}意味着只要满足m%n==0,发生break之后,下一次开始这个for循环的时候n都会重新赋值为初始值2,但是continue的话就会接着上次运算剩下的值继续进行,不会重新赋值),4%3==0为假,不执行continue,sum=7.
所以这里并不是为了识别不能被三整除的数,而是要识别能被三整除的数并及时跳出防止它们加到sum上。
举报