您好我正在尝试解决此程序的工作原理,然后在执行代码后计算值。
这是代码:
int a,b,c;
a = 19;
b = 23;
c = 7;
for (a = 0; a <= b; a++)
{
b = 8;
c = c + 1;
}
我得到的答案是。
a = 19
b = 8
c = 7
哪个错了,我真的不确定为什么。任何帮助表示赞赏。
答案 0 :(得分:1)
这是一步......
首先,我们有
a | b | c
---|---|---
19 |23 | 7
然后我们点击:
for(a=0; a <= b; a++) {
这将立即设置a=0
,然后比较a <= b
。如果为true,它将运行循环体,运行a++
,然后再次检查条件(重复直到条件评估为false)。让我们来看看迭代...
进入我们现在拥有的循环
a | b | c
---|---|---
0 |23 | 7
a <= b
是真的,所以我们将进入循环并运行:
b = 8;
c = c + 1;
然后我们运行增量(a++
)。所以在第一个循环和增量之后我们将有
a | b | c
---|---|---
1 | 8 | 8
由于a <= b
仍然是真的,我们将再次进入循环然后再做一次增量......
你会继续,直到病情不再真实。这有意义吗?