我目前正在学习C并希望检查我对for
循环的理解是否正确。
输出A is 6
是否会发生,因为在第5次循环运行后,+1被添加到a
(这使得它为6),然后条件被停止,因为它不是更长<= 5
?
int a;
float b;
b = 0;
for (a = 1; a <= 5; a++)
b = b + 0.5;
printf ("A is %d\t\t B is %.2f\n", a, b);
输出
A is 6 B is 2.50
答案 0 :(得分:6)
是
当a == 5
时,条件a <= 5
为真,因此循环体(b = b + 0.5;
)被执行。在身体之后,a++
部分始终被执行。
这使得a == 6
。然后条件a <= 5
为false
,因此循环终止。
在循环之后使用索引的值有时很有用。
答案 1 :(得分:3)
你是对的。 for (init; condition; finish)
语言功能对于如下所示的结构来说非常方便:
init;
while (condition) {
...insert code here...
finish;
}