C语言【问题描述】已知一个数列的前三项分别为0,0,1, 以后的各项都是其相邻的前三项之和,计算并输出该数列前n项的平方根之和,默认6位小数。 【输入形式】输入一个整数n 【输出形式】输出和。 【样例输入1】10 【样例输出1】23.197745 【样例输入2】5 【样例输出2】3.414214
时间: 2023-12-01 09:02:44 浏览: 164
C语言用递归法计算Fibonacci(斐波拉契)数列的第n项。
以下是一个求解该问题的C语言代码示例:
```c
#include <stdio.h>
#include <math.h>
int main() {
int n;
double a = 0, b = 0, c = 1, sum = 1;
printf("请输入一个正整数n:");
scanf("%d", &n);
for (int i = 4; i <= n+3; i++) {
a = b;
b = c;
c = a + b + c;
sum += sqrt(c);
}
printf("前%d项的平方根的和为:%.6lf\n", n, sum);
return 0;
}
```
该程序首先要求用户输入一个正整数n,然后使用for循环计算数列的第4项到第n+3项的值,并累加每项的平方根,最后将结果输出。其中,a、b、c三个变量分别表示数列的第i-3、i-2、i-1项,而c则表示数列的第i项,它们的初始值分别为0、0、1。在每次循环中,将a、b、c依次向后移动一位,并使用a、b、c的值计算出下一项c的值,然后累加平方根即可。
阅读全文