描述:输入n(≤10)个小写字母(可能重复),输出n个字符的全部排列
输入:aacc
输出:aacc acac acca caac caca ccaa
利用STL中的next_permutation()函数
代码仅供参考,勿拷贝作为课堂派作业!!!
#include<stdio.h>
#include<algorithm>
using namespace std;
int main()
{
char a[1000];
int n;
int i;
while(scanf("%d",&n))
{
getchar();
for(i=0;i<n;i++)
scanf("%c",&a[i]);
sort(a,a+n); ///对字符串排序
for(i=0;i<4;i++)
{ ///输出第一个串
printf("%c ",a[i]);
}
printf("\n");
while(next_permutation(a,a+4))
{ ///输出剩下的串
for(i=0;i<4;i++)
{
printf("%c ",a[i]);
}
printf("\n");
}
}
return 0;
}