#include <stdio.h>
int a[1000];
int end; // 保存输入要取的n值
// 从m个数中,取出n个数的组合
void Combination(int m, int n)
{
int i, j;
for (i = m; i >= n; i--)
{
a[n] = i;// 最后一个位置的元素可以取m,m-1,m-2.....n
if (n > 1)
{
Combination(i - 1, n - 1);// 从剩余的i-1个元素中取出n-1
}
else
{
for (j = 1; j <= end; j++)
{
printf("%d", a[j]);
}
printf("\n");
}
}
}
int main()
{
int m, n;
int i;
scanf("%d%d", &m, &n);
end = n;
Combination(m, n);// 从m个数中取出n个数的所有组合
return 0;
}
m个数中取n个数的组合
最新推荐文章于 2022-05-08 22:47:57 发布