兄弟呀,你的 单精度变量S 你没给它初值;它是乱七八糟的一个值啦! 应该是:float s=0.0
还有,你把那些参加除法运算的变量尽量定义成单精度的! 运算中很有可能出现差异的!
比如: float a=(double)2.0;
float b=(double)1.0;
float c,j;
int n,i;
我觉得你应该这样!写比较符合标准C。。。。。。。。。。
#include
void main()
{
int i,n;
float s = 0,j,a=2,b=1,c;
printf("input a number:");
scanf("%d",&n);
for (i=1;i<=n;i++) {
j=a/b;
c=a;
a=b+c;
b=c;
s=s+j;
}
printf("s=%.2f\n",s);
}
你试下这样做
什么都没有 怎么指出错误
呃…我用手机上难道看不见你出的题?