迅雷笔试题 /*定义循环左移函数(我没有用左移函数)*/
{
int i,j;
char temp=str[0];
for (i=0;im;i ) str[i]=str[i 1];
str[i]=temp;
}
void pai(char str[],int m,int n) /*定义全排列函数*/
{ int k;
void chang(char str[],int m);
if (mn) /* 定 义 递 归 调 用 出 口 */
{
for (k=0;k=m;k )
{
pai(str,m 1,n); /*递归调用*/
chang(str,m); /*调用左移函数*/
}
}
else printf(%s ,str);
}
main()
{char str[]=ABCD; /*全排列字符,可以任意多个(相应的下面排列函数中参数4改成全排列字符的个数)*/ clrscr(); pai(str,0,4); /*这里参数0(下标)表示从第一个元素开始,4表示元素个数(不是下标)*/ getch();
,迅雷笔试 程序题