编写c程序

来源:百度知道 编辑:UC知道 时间:2024/05/28 14:55:07
编写程序,输入一个数,输出所有序列,如输入3 ,则输出123,132,213,231,312,321

#include <stdio.h>

#define MAX 10
int used[MAX];
int result[MAX];
int N;

void print()
{
int i;
for(i = 0; i < N; i++)
printf("%d ", result[i]);
getch();
printf("\n");
}

void proc(int step)
{
int i;
if(step == N) print();
else
for(i = 0; i < N; i++)
if(!used[i])
{
used[i] = 1;
result[step] = i + 1;
proc(step + 1);
used[i] = 0;
}
}

main(){
scanf("%d", &N);
proc(0);
}