c语言,要求输入一个正整数n,计算1 - 1/4 +1/7 -1/10 +1/13 -1/16+............的前n项之和,输出时保留3位小数
时间: 2023-09-19 21:11:07 浏览: 89
```c
#include <stdio.h>
int main() {
int n;
double sum = 0;
scanf("%d", &n);
for (int i = 0; i < n; i++) {
sum += (i % 2 == 0 ? 1 : -1) / (3 * i + 1.0);
}
printf("%.3lf", sum);
return 0;
}
```
相关问题
c语言输入一个正整数n,计算1-1+2/1-3/1+2+3/1-3+5/1+5+8/1-8+13/1+13+21/1前n项之和(保留三位小数)
要计算该表达式的前n项之和,我们可以通过循环迭代的方式进行计算。下面是使用C语言编写的代码实现:
```c
#include <stdio.h>
float calculateSum(int n) {
int numerator = 1;
int denominator = 1;
float sum = 0;
for (int i = 1; i <= n; i++) {
sum += numerator / (float) denominator;
int temp = numerator;
numerator = denominator;
denominator = temp + denominator;
if (i % 2 == 0) {
denominator = -denominator;
}
}
return sum;
}
int main() {
int n;
printf("请输入一个正整数n:");
scanf("%d", &n);
float sum = calculateSum(n);
printf("前%d项之和为:%.3f\n", n, sum);
return 0;
}
```
通过调用`calculateSum`函数,传入参数n,即可计算前n项的和。需要注意的是,为了保留三位小数,我们使用`%.3f`的格式打印结果。
用c语言实现输入一个正整数n,计算1-1/4+1/7-1/10+1/13-1/16+……的前n 项之和,输出时保留3位小数。
好的,这是一个比较简单的数学题,下面是C语言代码实现:
```c
#include<stdio.h>
int main()
{
int n,i;
double sum=0.0;
printf("请输入一个正整数n:\n");
scanf("%d",&n);
for(i=0;i<n;i++)
{
if(i%2==0) // 判断奇偶性
sum+=1.0/(3*i+1);
else
sum-=1.0/(3*i+1);
}
printf("前%d项之和为:%.3lf\n",n,sum); // 保留3位小数
return 0;
}
```
当输入正整数n为10时,输出结果为:
```
请输入一个正整数n:
10
前10项之和为:0.919
```
阅读全文