编写一个C语言程序,计算下面公式并输出结果。 (n n m ! )!m! C m n = − 要求:(a)编写一个函数计算 n! (b)编写主函数,由键盘输入 n 和 m,调用(a)中的函数完成计算。 (c)输入 n 和 m 要给出提示,并检查 n 和 m 的合理性,不合理的输入应输出错误信 息,并不再进行计算。 (d)运行程序并计算C5 8 、C2 7 、C1 8、C7 7 、C0 8 。
时间: 2024-03-24 20:38:10 浏览: 80
用C 编写计算器程序
5星 · 资源好评率100%
根据您的要求,以下是一个C语言程序,可以计算给定的公式并输出结果。请注意,程序中包含了输入提示和错误检查功能。
```c
#include <stdio.h>
int factorial(int n);
int main() {
int n, m;
double result;
// 输入提示,检查输入的合理性
printf("请输入 n 和 m(n >= m):\n");
scanf("%d %d", &n, &m);
if (n < m) {
printf("n 必须大于等于 m。\n");
return 1;
}
// 计算公式
result = factorial(n) / (factorial(m) * factorial(n - m));
// 输出结果
printf("C%d%d = %.0lf\n", m, n, result);
return 0;
}
// 计算 n 的阶乘
int factorial(int n) {
int result = 1;
for (int i = 1; i <= n; i++) {
result *= i;
}
return result;
}
```
您可以根据需要,对程序进行修改和扩展。在此程序中,我们首先定义了一个计算阶乘的函数 `factorial`,然后在主函数中,先进行了输入提示和合理性检查,然后计算给定的公式,最后输出结果。
阅读全文