【C】1~n 的全排列

来源:互联网 发布:ubuntu设置中文环境 编辑:程序博客网 时间:2024/06/07 10:19

看了好久的

from 臧冽

#include<stdio.h>
int a[10],b[10],n;
void dsf(int step){
int i;
if(step==n+1){
for(i=1;i<=n;i++){
printf("%d",a[i]);
}
printf("\n");
return;
}
for(i=1;i<=n;i++){
if(b[i]==0){
a[step]=i;
b[i]=1;
dsf(step+1);
b[i]=0;
}
}
return;
}
int main(){
scanf("%d",&n);
dsf(1);
return 0;
}

原创粉丝点击