文章
6
粉丝
0
获赞
6
访问
398
/**
有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13...... 求出这个数列的前N项之和,保留两位小数。
**/
#include<stdio.h>
int main(){
int n;
scanf("%d",&n);
double sum=0.0;
int a=2,b=1;//初始化2/1第一个数
for(int i=0;i<n;i++){//前n项和
sum += (double)a/b;//注意这里要进行进制转换,否则小数点会直接舍去
int temp = a+b;//下一个数的分子 (为前两项的分子与分母的和)
b=a;//前一项的分母变为后一项的分子
a=temp;// 后一项的分子变为前两项的分子与分母的和
}
printf("%.2lf",sum);
return 0;
}
登录后发布评论
暂无评论,来抢沙发