问题 单项选择题

以下程序的功能是计算:


#include <stdio.h>
main()
int n; float s;
s=1.0;
for(n=10;n>1;n--)
s=s+1/n;
printf("%6.4f\n",s);

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

答案

参考答案:C

解析: 该程序的运行结果是1.0000,算法错误。在s=s+1/n中,因为n为整型,所以循环中1/n始终为0。这就是本题算法错误的原因。应把s=s+1/n改为s=s+1.0/n。

选择题
单项选择题