首先申请全局变量 

int Num[4]={2,3,5,8};//Num里面的数字是要进行全排列的数字

int S[10];//栈,用来存放数字

int depth=0;//深度,用来控制将几个数字全排列

bool F[10]={0};// 数字i的标记情况对应F[i]

int Perm0()
{
if(depth==3) //只要将2,3,5,8里面三个数字进行全排列即可 用depth控制 结果应为排列式A43;
{
for(int i=0;i<top;i++)
printf("%d ",S[i]);
printf("\n");
return 1;
}
for(int i=0;i<=3;i++)
{
if(F[Num[i]]==0)

{
F[Num[i]]=1;
S[top++]=i;
depth++;
Perm0();
depth--;
F[Num[i]]=0;
top--;
}
}
}