问题
单项选择题
以下程序的功能是计算:
。
#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。