Come in please
登录 | 论坛导航 -> 华新鲜事 -> 求学狮城 | 本帖共有 1 楼,分 1 页, 当前显示第 1 页 : 本帖树形列表 : 刷新 : 返回上一页
<<始页  [1]  末页>>
作者:duck (等级:7 - 出类拔萃,发帖:6205) 发表:2003-08-28 09:59:03  楼主  关注此帖评分:
不好意思,还想问学长几个问题~~1。what is i after the following for loop? for (int i=0;i (more...)
Come in please
1. Answer: During this while loop
for (int i=0;i<10;++i){
y+=i;
}
i is a local variable in this loop, which means i only exists within this loop. Before the loop and after the loop, i will no longer be existing in the whole program. So we may use this kind of variable many times in many while or for loops and defined it everytime. eg.
for (int i=0;i<10;++i){
y+=i;
}
int z = y;
for (int i=10; i>0; i--){
z-=i;
}

If you have a loop in another loop, you must use another variable if you have use i for the upper level, like the following example.

for (int i=0; i<10; i++)
{
for (int j = 10; j>0; j--)
{
z+=i*j;
}
}

A kind of stupid bug is mis-using i as j in the statements in the inner loop. The program may compile, but occur a runtime error, even infinite loop. You need to pay much attention of using them.


2. Answer: The program compiles well. But as the answer said, it will be an infinite loop. You can modify the program like
while (d<=10.0)
{
//codes to be added.
}

What's 我心为谁动 said is true, 0.2+0.5 does not equal to 0.7 in the program. You can test with some more cases. That's due to limitation of computer itself.

3. Answer: if (expression) { }. This expression must result in a boolean value. In java, = is used as assignment. == will result a boolean value, means whether the former equals to the latter.

4. Answer: the expression is correct. And here, even must be declared as a boolean.

boolean even;
even = (number%2 ==0);

In another words, if ( number%2==0) even=true; else even=false;
*签名档字数限制在200以内。
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版所有回复从这里展开收起列表
论坛导航 -> 华新鲜事 -> 求学狮城 | 返回上一页 | 本主题共有 1 篇文章,分 1 页, 当前显示第 1 页 | 回到顶部
<<始页  [1]  末页>>

请登录后回复:帐号   密码