用C语言实现:有一个分数序列:2/1,3/2,5/3……求出这个数列的前20项之和。
时间: 2023-12-13 10:11:30 浏览: 33
#include <stdio.h>
int main()
{
int i;
double sum = 0.0, numerator = 2.0, denominator = 1.0;
for (i = 1; i <= 20; i++)
{
sum += numerator / denominator;
double temp = denominator;
denominator = numerator;
numerator = numerator + temp;
}
printf("前20项之和为:%.2lf", sum);
return 0;
}
相关问题
c语言:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13……求这个数列的前20项之和,用while语句
是C语言代码,使用while语句求解分数序列的前20项之和:
```c
#include <stdio.h>
int main() {
double a = 2, b = 1, sum = 0, temp;
int i = 1;
while (i <= 20) {
sum += a / b;
temp = a;
a = a + b;
b = temp;
i++;
}
printf("sum=%16.10f\n", sum);
return 0;
}
```
解释:
首先,我们需要定义变量a、b、sum和temp,分别表示分数序列中的分子、分母、前n项之和和临时变量。
然后,我们使用while循环来计算分数序列的前20项之和。在每次循环中,我们将a/b加到sum中,然后交换a和b的值,使得a变为下一项的分子,b变为下一项的分母。
最后,我们使用printf函数输出结果。
用c语言写一个代码,求出这个数列的前20项之和2/1 3/2 5/3……
以下是用C语言写的代码,可以求出这个数列的前20项之和:
```
#include<stdio.h>
int main(){
int n = 20;
double sum = 0;
double a = 2, b = 1;
for(int i=1; i<=n; i++){
sum += a/b;
double temp = a;
a = a + b;
b = temp;
}
printf("前20项之和为:%lf\n", sum);
return 0;
}
```
答案是:前20项之和为:32.660261。