 #include<stdio.h>
 void permulate(int *in, int *status, int *out, int pos)
 ...{
int i=0;
 if (pos == 5) ...{
 for (i=0;i<5;i++) ...{
printf("%d ", out[i]);
}
printf(" ");
}
 for (i=0;i<5;i++) ...{
 if (!status[i]) ...{
out[pos]=in[i];
status[i]=1;
permulate(in, status, out, pos+1);
status[i]=0;
}
}
}
 void main(void)
 ...{
 int in[5]=...{1,2,3,4,5};
 int status[5]=...{0,0,0,0,0};
 int out[5]=...{0,0,0,0,0};
permulate(in,status,out,0);
}

|