用C语言,S=1+1/(1+2)+1/(1+2+3)+……1/(1+2+3+…+n)请编写函数fun,其功能是:根据以下公式计算s,并计算结果作为函数值返回,n通过形参传入。
时间: 2023-12-21 15:30:28 浏览: 78
以下是用C语言编写的函数fun,实现计算s=1+1/(1+2)+1/(1+2+3)+……1/(1+2+3+…+n)的功能:
```c
float fun(int n){
float s = 0;
int t = 0;
for(int i = 1; i <= n; i++){
t += i;
s += 1 / (float)t;
}
return s;
}
```
相关问题
c语言3.+编写程序计算下列S的值。 (1)+S=1-1/2+1/3-1/4+1/5+……-1/100 (2)+S=1!+2!+3!+……10! (3)+S=1/2+2/3+3/5+5/8+……++(
以下是三个C语言程序,分别计算了三个不同的数学公式的值:
1.计算1-1/2+1/3-1/4+1/5+……-1/100的值
```c
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n = 100;
double sum = 0;
int flag = 1;
for (int i = 1; i <= n; i++)
{
sum += flag * 1.0 / i;
flag = -flag;
}
printf("%.4lf", sum);
return 0;
}
```
2.计算1!+2!+3!+……10!的值
```c
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n = 10;
int sum = 0;
int fac = 1;
for (int i = 1; i <= n; i++)
{
fac *= i;
sum += fac;
}
printf("%d", sum);
return 0;
}
```
3.计算1/2+2/3+3/5+5/8+……的值
```c
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n = 20;
double sum = 0;
int a = 1, b = 2;
for (int i = 1; i <= n; i++)
{
sum += (double)a / b;
int temp = b;
b = a + b;
a = temp;
}
printf("%.4lf", sum);
return 0;
}
```
c语言,计算并输出下列多项式的值。 s = 1 + 1/(1+2) + 1/(1+2+3) + ……+ 1/(1+2+3+……+50)
以下是C语言计算并输出多项式的值的代码:
```c
#include <stdio.h>
double function(int n) {
int i, j;
double sum = 0.0, t;
for (i = 1; i <= n; i++) {
t = 0.0;
for(j = 1; j <= i; j++) {
t += j;
}
sum += 1.0 / t;
}
return sum;
}
int main() {
double s = function(50);
printf("s is %f\n", s); return 0;
}
```
阅读全文