#include <iostream>
#include <cstdio>
using namespace std;
int num,n,p[101];
void print(){
for (int j = num - 1; j >= 0; j--)
printf("%d\t",p[j]);
printf("\n");
}
void combine(int start, int* result, int m)
{
int i = 0;
for (i = start; i <= n + 1 - m; i++) ///从start开始
{
result[m - 1] = i;
if (m - 1 == 0)
print();
else
combine(i + 1, result, m - 1);
}
}
int main()
{
while(cin>>n>>num){
memset(p,0,sizeof(p));
combine(1, p, num);
}
}
运行结果为: