C语言上级求助
用 for 语句编程,求数列前 20 项之和:2/1,3/2,5/3,8/5,13/8 ……
#include <stdio.h>
void main()
{
double sum=0,x=0,t=0,a=1,b=2;
inti;
for (i=0;i<=2;i++)
{
x=b/a;
t=b;
b=a+b;
a=t;
sum=sum+x;
}
printf("%d\n",sum);
}为什么结果会是乱码?
如何改正??? 现在在外面没有编译器用记事本写的不知道有没有错误#include<stdio.h>
int main()
{
double s,fz,fm,t;
sum = 0.0;
fz = 2.0;
t = 2.0;
fm = 1.0;
int i;
for(i = 0;i<20;i++)
{
sum += fz/fm;
fz = fz + t;
t = fz;
fm = fm + 1.0;
}
printf("%lf\n",sum);
return 0;
} sum你设置的是double型,应该用%f输出 sum定义的是double类型而你用printf("%d\n",sum)却是用的整形打印的! 牡丹花下死做鬼 发表于 2014-4-27 13:44 static/image/common/back.gif
现在在外面没有编译器用记事本写的不知道有没有错误
不行,有错误啊
页:
[1]