要求以下程序的功能是计算:s=1+1/2+1/3+…+…1/10 main( ) { int n; float s; s=1.0; for

10 查阅

要求以下程序的功能是计算:s=1+1/2+1/3+…+…1/10

main( )

{ int n; float s;

s=1.0;

for(n=10;n>1;n--)

s=s+1/n;

printf("%6.4f\n",s);

}

程序运行后输出结果错误,导致错误结果的程序行是

A.s=1.0;

B.for(n=10;n>1;n--)

C.s=s+1/n;

D.printf("%6.4f\n",s);

参考答案:

C解析:当“/”两侧均为整型数时,运算结果为整数,因此1/n(n>1)的结果总为0,而不是小数。

计算机二级