#include<stdio.h>
char s[6][20]={{1,2,3},{1,3,2},{2,1,3},{2,3,1},{3,1,2},{3,2,1}};
int q(int d,int now,int x)
{
     int i,k;
     if(d<now) { for(i=0;i<d;i++) printf("%d ",s[x][i]); putchar('\n'); return 0; }
     for(i=0;i<now;i++)
     {
       for(k=now-1;k>i;k--) s[x][k]=s[x][k-1];
       s[x][i]=now;
       q(d,now+1,x);
       for(k=i;k<now;k++) s[x][k]=s[x][k+1];
     }
}
int main(void)
{
    int n;
    int i;
    scanf("%d",&n);
    for(i=0;i<6;i++) q(n,4,i);
    return 0;
}
刚才写的,未完全测试,你试一下										
					
	
		   My Blog: www.aiexp.info
		   My Blog: www.aiexp.info 
虽然我的路是从这里开始的,但是这里不再是乐土.感谢曾经影响过,引导过,帮助过我的董凯,飞燕,leeco,starwing,Rockcarry,soft_wind等等等等.别了,BCCN.