显示5个不同数字排列组合的具体种数,用C语言如何编写
时间: 2024-03-02 11:50:01 浏览: 25
这个问题可以通过使用C语言中的排列组合算法来解决。具体实现如下:
```c
#include <stdio.h>
// 计算排列数
int permutation(int n, int r) {
int result = 1;
for (int i = n; i > n - r; i--) {
result *= i;
}
return result;
}
// 计算组合数
int combination(int n, int r) {
if (r > n / 2) {
r = n - r;
}
int result = 1;
for (int i = 1; i <= r; i++) {
result *= n - i + 1;
result /= i;
}
return result;
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
int n = 5;
int r = 5;
// 计算排列数和组合数并输出结果
printf("排列数: %d\n", permutation(n, r));
printf("组合数: %d\n", combination(n, r));
return 0;
}
```
以上代码通过定义一个 `permutation` 函数和一个 `combination` 函数,分别计算排列数和组合数。然后在 `main` 函数中,定义一个包含 5 个不同数字的数组,并计算出排列数和组合数并输出结果。