慕沐4538654
2018-09-03 15:34
public class HelloWorld {
public static void main(String[] args) {
int sum = 0; // 保存不能被3整除的数之和
// 循环变量 i 初始值为 1 ,每执行一次对变量加 1,只要小于等于 100 就重复执行循环
/* for (int i = 1; i < 100 ; i++ ) {
// 变量 i 与 3 进行求模(取余),如果不等于 0 ,则表示不能被 3 整除
if (i % 3 != 0) {
sum = sum + i; // 累加求和
}
}
*/
for (int i = 1; i <= 100 && i % 3 != 0 ; i++ ) {
// 变量 i 与 3 进行求模(取余),如果不等于 0 ,则表示不能被 3 整除
sum = sum + i; // 累加求和
}
System.out.println("1到100之间不能被3整除的数之和为:" + sum);
}
}
你看你的循环,当i=3的时候,i%3=0,不满足循环条件就跳出循环了
当 i 等于 3 时,【i <= 100 && i % 3 != 0】为false,循环体结束。所以结果只有 1 与 2 的和,输出结果为【1到100之间不能被3整除的数之和为:3】。
判断条件有误,i<=100是判断循环是否继续执行
i%3!=0是判断是否执行sum=sum+i;
&&是且,i变量必须同时满足i<=100和i%3!=0
如果任一条件不满足循环就结束了
Java入门第一季(IDEA工具)升级版
1165172 学习 · 17581 问题
相似问题