C语言计算序列和:2/1+3/2+5/3+8/5+... 前n项和
下面是一个C语言程序,用于计算并输出指定项数的序列和:
#include <stdio.h>
float sequenceSum(int n) {
float sum = 0.0;
float numerator = 2.0;
float denominator = 1.0;
for(int i = 1; i <= n; i++) {
sum += numerator / denominator;
float nextNumerator = numerator + denominator;
denominator = numerator;
numerator = nextNumerator;
}
return sum;
}
int main() {
int n;
printf("请输入正整数n:");
scanf("%d", &n);
if (n <= 0) {
printf("输入无效!请重新运行程序并输入一个正整数。\n");
return 1;
}
float sum = sequenceSum(n);
printf("前%d项序列的和为:%.2f\n", n, sum);
return 0;
}
这段代码中,sequenceSum函数用于计算序列的前n项之和。它使用了三个变量:sum表示累加的和,numerator表示当前项的分子,denominator表示当前项的分母。在循环中,通过更新分子和分母的值来计算每一项的值,并将其累加到sum中。
在main函数中,首先获取用户输入的项数n。如果输入的n小于等于0,输出错误信息并返回1。否则,调用sequenceSum函数计算序列的前n项之和,并将结果打印出来。
运行程序时,用户需要输入一个正整数n,程序将输出2/1+3/2+5/3+8/5+...的前n项之和,并保留两位小数。例如,输入n为4时,程序将输出前4项序列的和。
原文地址: https://www.cveoy.top/t/topic/cabk 著作权归作者所有。请勿转载和采集!