#include<stdio.h>
#include<string.h>
void arr(char c[],int b,int e)
{
if(b==e-1)
{
for(int i=0;i<e;i++)
{
printf("
%c",c[i]);
}
printf("\n");
}
else
{
for(int j=b;j<e;j++)
{
char temp=c[j];
c[j]=c[b];
c[b]=temp;
arr(c,b+1,e);
temp=c[j];
c[j]=c[b];
c[b]=temp;
}
}
}
int main()
{
int n;
printf("请输入数组长度:");
scanf("%d",&n);
fflush(stdin);
char *a=new char[n];
gets(a);
arr(a,0,strlen(a));
return 0;
}
[[it] 本帖最后由 sunkaidong 于 2008-4-10 14:06 编辑 [/it]]