用C语言编程:打印由字符A、B、C、D组成的所有全排

用C语言编程:打印由字符A、B、C、D组成的所有全排

#include <stdio.h>
void main()
{
int i,j,m,n;
char a[4] = {'A','B','C','D'};
for (i = 0; i < 4; ++i)
{
for (j = 0; j < 4; ++j)
{
if (i == j) continue;
for (m = 0; m < 4; ++m)
{
if ((i == m)||(j == m)) continue;
for (n = 0; n < 4; ++n)
{
if ((i == n)||(j == n)||(m == n)) continue;
putchar(a[i]);
putchar(a[j]);
putchar(a[m]);
putchar(a[n]);
putchar('\n');
}
}
}
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-09-10
#include<stdio.h>
#include<math.h>
void main()
{char a[4]={"ABCD"};
int i,j,k,l;
for(i=0;i<4;i++)
for(j=0;j<4;j++)
for(k=0;k<4;k++)
for(l=0;l<4;l++)
if(i!=j&&i!=k&&i!=l&&j!=k&&j!=l&&k!=l)
{printf("%3c%3c%3c%3c",a[i],a[j],a[k],a[l]);
printf("\n");}
}
相似回答