题目:启动C语言环境,通过函数求级数 a =2/1+3/2+5/3+8/5+13/8+21/13…的 前 n 项之和, n 通过函数参数传递。在主函数中输入 n ,调用函数输出结果。 如输入4,结果为:6.77。程序的前面包括以下内容:#include<stdio.h>#include<stdlib.h>void PutRes(void);float fun(int);float fun (int n){
时间: 2024-02-11 12:08:24 浏览: 94
好的,我明白了。以下是代码实现:
```
#include<stdio.h>
#include<stdlib.h>
float fun(int n){
float a = 2, b = 1, c = 0; // 初始化变量
for(int i=1; i<=n; i++){
c += a/b; // 求和
float temp = a + b; // 更新 a 和 b
b = a;
a = temp;
}
return c;
}
void PutRes(){
int n;
printf("请输入n的值:");
scanf("%d", &n); // 输入 n
printf("前 %d 项的和为:%.2f", n, fun(n)); // 调用函数输出结果
}
int main(){
PutRes(); // 调用函数
return 0;
}
```
运行结果:
```
请输入n的值:4
前 4 项的和为:6.77
```
相关问题
编写c语言程序,通过函数求级数a=2/1+3/2+5/3+8/5+13/8+21/13....的前n项和,n通过函数参数传递,在主函数中输入n,调用函数输出结果 编写c语言程序,通过函数求级数a=2/1+3/2+5/3+8/5+13/8+21/13....的前n项和,n通过函数参数传递,在主函数中输入n,调用函数输出结果
以下是求解该级数前n项和的C语言程序:
```c
#include <stdio.h>
double sum(int n);
int main()
{
int n;
printf("请输入n:");
scanf("%d", &n);
printf("前%d项和为%f\n", n, sum(n));
return 0;
}
double sum(int n)
{
double a = 2, b = 1, c;
double s = 0;
int i;
for (i = 1; i <= n; i++)
{
s += a / b;
c = a + b;
b = a;
a = c;
}
return s;
}
```
程序中的sum函数用于计算级数前n项的和。在主函数中输入n后,调用sum函数并输出结果。
用c语言编程 通过函数求级数a=2/1 + 3/2 + 5/3 +8/5 +13/8+21/13…的 前n顶之和,n通过函数参数传递。在主函数中输入n,调用函数输出结果
以下是用C语言编写的程序,可以通过函数求级数的前n项之和:
```c
#include <stdio.h>
double sum(int n) {
double a = 2, b = 1, c, s = 2; // 初始化前两项和为2
int i;
for (i = 2; i <= n; i++) {
c = a + b; // 计算下一项
s += c / b; // 将下一项加入总和
b = a; // 更新前两项
a = c;
}
return s;
}
int main() {
int n;
printf("请输入n的值:");
scanf("%d", &n);
printf("前%d项之和为:%.2f\n", n, sum(n));
return 0;
}
```
运行程序后,输入n的值即可求出级数前n项之和。
阅读全文