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

来源:百度知道 编辑:UC知道 时间:2024/09/21 06:25:32
3.求数列1-1/2+2/3-3/5+5/8-8/13....用C写带上定义注释谢谢

#include <stdio.h>
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;
}

#include <stdio.h>

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<num;k++)
{
sum+=i*m/n;//累加
i*=-1;//改变符号
t=n;//暂存分母
n+=m;//算新分母
m=t;//算新分子
}

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

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