问题及代码
/*题目描述
有一个分数序列:2/1, 3/2, 5/3, 8/5, 13/8, …编写程序求出这个序列的前n项之和。
输入
输入只有一个正整数n,1≤n≤10。
输出
输出该序列前n项和,结果保留小数后6位。
样例输入
3
样例输出
5.166667
*/#include <stdio.h>
#include <stdlib.h>
int main()
{
int n,i=1,f1=0,f2=1,s1=1,s2=1;
double sum=0.0,sn,fn,t;
scanf("%d",&n);
while(i<=n)
{
sn=s1+s2;
fn=f1+f2;
t=sn/fn;
sum=sum+t;
f1=f2;
f2=fn;
s1=s2;
s2=sn;
i++;
}
printf("%.6f",sum);
return 0;
}
运行结果
知识点总结
进一步学习循环结构
学习心得
对while结构有了进一步认识