用C语言编写程序编写分数序列的前20项之和?

分数序列如:2尀1,3尀2.5尀3,8尀5.13尀8,21尀13.......的前20项之和。
2024-11-16 06:57:42
推荐回答(5个)
回答1:

//分数序列如:2\1,3\2.5\3,8\5.13\8,21\13.......的前20项之和。
#include//直接看这一组数列有什么规律,很容易发现,从2/1开始,后一组的分母为前一组的一个分子
//后一项的分子为前一项的分母分子之和,如果用An表示分母,Bn表示分子,则有递推工式,B(n+1)=An::A(n+1)=An+Bn知道这个就很好办了
float getMe(int n)//这个函数就是求第n项的那个数的值
{
float An=2.0;float Bn=1.0;
float temp;
while(--n)
{
temp=Bn;
Bn=An;
An=An+temp;
}
return(An/Bn);}
void main()
{
int n;
float theSum=0.0;
printf("请输入你想要求的前n项的和:");
scanf("%d",&n);
for(;n>0;n--)
{
theSum=theSum+getMe(n);
}
printf("%f",theSum);
}

回答2:

#includevoid main(){int i=1,j=2,l=1;int y(int x,int z);float k=0;

for(i=1;i<=20;i++)

{k=k+i/j;j=y(l,j);l=y(l,j)-l};int y(int x,int z){int e;

e=x+z;

return(e);}}比较粗糙,你再优化一下。

回答3:

#include void main()
{
double a=1;
double b=2;
double t;
double s=b/a;
int i; for(i=1;i<20;i++)
{
t=a;
a=b;
b+=t;
s+=b/a;
}
printf("sum=%lf\n",s);
}

回答4:

是2\1 .....还是2/12\1我不知道什么

回答5:

你确定你的题目没错???怎么我看不懂~那堆数?!