提问:这个c程序运行的结果不应该是3.5吗,为什只是3啊?
回答:这个程序结果为3.0,因为int运算型的结果只能是int的
要改
#include<stdio.h>
main()
{
int a,b,c,i;
float s;
a=2,b=1,i=1;
s=0;
while(i<=2)
{
s=s+a/b;
c=a;
a=a+b;
b=c;
i++;
}
printf("%f\n",s);
}
回答:这个程序结果为3.0,因为int运算型的结果只能是int的
要改
s=s+a/b;
为
s=s+(float)a/b;
结果才是3.5