📄 p.cpp
字号:
#include <stdio.h>
#define max 50
int a[max],b[max],tag[max]={0};
int n,k=1,num=0;
void execute(int i)
{
int j;
if(i>n)
{
for(j=1;j<=n;j++)
printf("%d ",b[j]);
printf("\n");
num++;
}
else
{
for(j=1;j<=n;j++)
{
if(tag[j]==0)
{
tag[j]=1;
b[k]=a[j];
k++;
execute(i+1);
k--;
tag[j]=0;
}
}
}
}
void main()
{
int i;
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
printf("待排列的数为:");
for(i=1;i<=n;i++)
printf("%d ",a[i]);
printf("\n");
execute(1);
printf("总排列数为:%d\n",num);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -