C语言的求解

来源:百度知道 编辑:UC知道 时间:2024/09/13 06:53:23
求2/1+3/2+5/3+8/5+13/8 的前20项和 请问需要什么语句,给提供两种方法

循环语句for
分子n+1=分母n+分子n;分母n+1=分子n;

#include"stdio.h"
#define N 20
void main()
{
double m,n,s;
int i;
s=0;
m=2;n=1;
for(i=1;i<=N;i++)
{
s=s+m/n;
m=m+n;
n=m-n;
}
printf("s=%f\n",s);
}

2. 3/2=1/(2/1)+1;5/3=1/(3/2)+1;
#include"stdio.h"
#define N 20
void main()
{
double n=2.0/1,s=0;
int i;
for(i=1;i<=N;i++)
{n=1.0/n+1;
s=s+n;
}
printf("s=%f\n",s);
}

加法和除法结合起来就行了

第一种循环语句,第二种函数返回值语句