rxu2003 @ 2023-03-08 13:53:57
# include <stdio.h>
int main ( )
{
int n , k;
n = k = 0;
k = 4;
double Sn = 0;
for (n=1 ; Sn < k ; n++ )
{
Sn = Sn + 1/n;//为什么用1运行不了,而1.0却可以运行
}
printf ("%d",n);
return 0;
}
by q779 @ 2023-03-08 14:09:29
1是整形,1.0是浮点型。整形的/
是向下取整的。
by rxu2003 @ 2023-03-08 17:14:07
@q779 非常感谢!!
by hang2023 @ 2023-04-14 11:08:32
1/n
表示整数与 n 相除,最后结果是整数。那么,可以推导出除了 1/1
以外,其他结果都为0.
1.0/n
则表示浮点数与小数相除,最后结果为浮点数。
by hang2023 @ 2023-04-14 11:09:02
@hang2023 好像句号写成“.”了。