【发布时间】:2016-01-05 05:14:04
【问题描述】:
我目前正在学习 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 是 6 B 是 2.50【问题讨论】:
-
您的假设是正确的,请使用
f后缀作为浮点数b = b + 0.5f; -
@AlterMann 应该对所有浮点数都这样做吗?谢谢
-
只对
float,0.5不带后缀表示double -
仅供将来参考:使用
float变量,执行b += cn次(其中c是一个常量,如这里)的循环并不总是会添加@ 987654335@ 至b。但是你现在不应该担心这个。或者你应该...