以下程序的功能是计算:。#include <stdio.h> main() { int n; float s; s=1.0; for(n=10;n>1;n--) s=s+1/n; pri

admin2009-01-15  23

问题 以下程序的功能是计算:。#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);    }    程序运行后输出结果错误,导致错误结果的程序行是(    )。

选项 A、s=1.0;
B、for(n=10;n>1;n--)
C、s=s+1/n;
D、printf("%6.4f\n",s);

答案4

解析 该程序的运行结果是1.0000,算法错误。在s=s+1/n中,因为n为整型,所以循环中1/n始终为0。这就是本题算法错误的原因。应把s=s+1/n改为s=s+1.0/n。
转载请注明原文地址:https://kaotiyun.com/show/WmXp777K
0

最新回复(0)