c语言编写程序,程序功能如下:函数fun的功能是根据形参m,计算公式 T=1/1!+1/2!+ 1/3!+…+1/m!的值
时间: 2023-06-01 19:03:34 浏览: 264
#include <stdio.h>
double fun(int m) { // 定义函数fun,返回类型为double型,形参为整型m
double T = 1.0; // 定义变量T并初始化为1.0
int i, j, factorial; // 定义变量i、j、factorial,均为整型
for (i = 1; i <= m; i++) { // 循环计算公式中的每一项
factorial = 1; // 初始化factorial为1
for (j = 1; j <= i; j++) { // 计算i的阶乘
factorial *= j;
}
T *= 1.0 / factorial; // 计算公式中的每一项,并将其累乘到T中
}
return T; // 返回计算结果
}
int main() {
int m;
printf("请输入m的值:");
scanf("%d", &m); // 输入m的值
printf("T的值为:%f\n", fun(m)); // 调用函数fun,并输出计算结果
return 0;
}
相关问题
用c语言编写函数fun其功能是:根据整型形参m,计算如下公式的值: y=1+1/3+1/5+1/7+...+1/(2m-3)
以下是用C语言编写的函数fun,实现根据整型形参m计算公式y=1+1/3+1/5+1/7+...+1/(2m-3)的功能:
```c
#include <stdio.h>
double fun(int m)
{
double y = 1.0; // 初始化y为1.0
// 从3开始循环,每次加2,直到2m-3为止
for (int i = 3; i <= 2 * m - 3; i += 2) {
y += 1.0 / i; // 每次加上1/i
}
return y;
}
int main()
{
int m;
printf("请输入m的值:");
scanf("%d", &m);
double y = fun(m);
printf("y的值为:%f\n", y);
return 0;
}
```
使用该函数,可以输入任意正整数m,计算出对应的y值。
计算公式s=1+1/(1+2)+1/(1+2+3)+…+1/(1+2+…+n)的值 编写函数fun(), 实现功能:根据公式s=1+1/(1+2)+1/(1+2+3)+…+1/(1+2+…+n)计算s,计算结果作为函数值返回,n通过形参传入。
计算公式s=1+1/(1+2)+1/(1+2+3)+…+1/(1+2+…+n)的值为s=1/(1)+1/(1+2)+1/(1+2+3)+…+1/(1+2+…+n),即s的每一项分母为1到n的和,分子为1,2,3,...,n。因此,可以使用循环来计算s的值。
```
// 代码类型:C语言
double fun(int n){
double s = 0;
int sum = 0;
for(int i = 1; i <= n; i++){
sum += i;
s += 1.0 / sum;
}
return s;
}
```
阅读全文