对于循环初学者的理解

时间:2015-10-07 19:53:54

标签: c loops for-loop

我目前正在学习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

2 个答案:

答案 0 :(得分:6)

a == 5时,条件a <= 5为真,因此循环体(b = b + 0.5;)被执行。在身体之后,a++部分始终被执行。

这使得a == 6。然后条件a <= 5false,因此循环终止。

在循环之后使用索引的值有时很有用。

答案 1 :(得分:3)

你是对的。 for (init; condition; finish)语言功能对于如下所示的结构来说非常方便:

init;
while (condition) {
    ...insert code here...
    finish;
}