- 帮帮忙,程序运行结果是什么?i=428;for(j=0;j<
- i=428;
for(j=0;j<=1000;j++)
{if (j mod 10=1)
continue;
if (j mod 7=1)
continue;
if (j mod 3=1)
i++;
}
循环结束后 i 的值是多少?这道题目是什么意思?
是怎么做的?
- 685
首先你的源有很大的问题,在C++中mod的符号是%。其次if中的判断语句返回的应该是bool类型的,应该用==,不是+
这是java中的源代码。和c++差不多的。
public class test1 {
public static void main(String[] args) {
int i,j;
i=428;
for(j=0;j<=1000;j++)
{if (j%10==1)
continue;
if (j%7==1)
continue;
if (j%3==1)
i++;
}
System.out.println("The result is "+i);
}
}
结果为685
这道题目我局觉得似乎是要你判断在0到1000之间的int有多少数被10,7,3除余数不是1,计算方法我就不多说了。运行结果已经给出。
我多说一句,我觉得这道题目如果出的更有意义一点,源程序应该是这样的
public class test1 {
/**
* @param args
*/
public static void main(String[] args)
{
int i,j;
i=428;
for(j=0;j<=1000;j++)
{if (j%10!=1)
continue;
if (j%7!=1)
continue;
if (j%3!=1)
i++;
System.out.println("The age is "+i);
}
}
}
就是0到1000中多少数被3,7,10除余数均为1.answer是438