#include <stdio.h>
int s[1000];
void f(int a[],int len,int n)
{
if (!n)
{
for (int i=0;i<len-1;i++)
{
printf("%d ",s[i]);
}
printf("%d\n",s[len-1]);
}
for (int i=0;i<len;i++)
{
if (a[i]!=0)
{
s[len-n]=a[i];
a[i]=0;
f(a,len,n-1);
a[i]=i+1;
}
}
}
int main()
{
int n;
int a[1000];
while (~scanf("%d",&n))
{
for (int i=0;i<n;i++) a[i]=i+1;
f(a,n,n);
}
}
温馨提示:答案为网友推荐,仅供参考