c语言问题求数列1-1⼀2+2⼀3-3⼀5+5⼀8-8⼀13....

3.求数列1-1/2+2/3-3/5+5/8-8/13....用C写带上定义注释谢谢
2024-12-04 14:18:35
推荐回答(3个)
回答(1):

#include

void main()
{
float i=1;//符号
int m=1,n=1;//m/n分子和分母
float sum=0;//和
int num,k,t;//num项数

printf("请输入项数:");
scanf("%d",&num);
for(k=0;k{
sum+=i*m/n;//累加
i*=-1;//改变符号
t=n;//暂存分母
n+=m;//算新分母
m=t;//算新分子
}

printf("前%d项和为:%f\n",num,sum);
}

回答(2):

int main()
{
int a=1,b=1,d;
int i=1,n;
float c=0,sum=0;
clrscr();
scanf("%d",&n);
while(i<=n)
{
c=(float)((i%2)==0? -1:1)*a/b;
sum+=c;
d=a;
a=b;
b=d+b;
++i;
}

printf("%f",sum);

return 0;
}

回答(3):

#include
int main()
{
double tmp,b=1, c=1,sum=0;
int flag=1;
int n;
scanf("%d", &n);
for (int i=1; i<=n; i++)
{
sum+=flag*b/c;
tmp=b;
b=c;
c=tmp+b;
flag=-flag;
}
printf("%lf",sum);
return 0;
}