用C语言编写12345678这八个数所有可能的排列的情况.急!!!那为好人可以帮个忙!!

请说下你的思路,,程序尽可能简单,解释尽可能详细!!要是能帮忙十分感谢!!!

第1个回答  2007-01-02
#include <stdio.h>

void main()
{
long n=0;
for(int a=1;a<9;a++)
{
for(int b=1;b<9;b++)
{
if(b!=a)
{
for(int c=1;c<9;c++){
if((c!=a)&&(c!=b))
{
for(int d=1;d<9;d++){

{
if((d!=a)&&(d!=b)&&(d!=c))
{
for(int e=1;e<9;e++){
if((e!=a)&&(e!=b)&&(e!=c)&&(e!=d))
{
for(int f=1;f<9;f++){
if((f!=a)&&(f!=b)&&(f!=c)&&(f!=d)&&(f!=e))
{
for(int g=1;g<9;g++){
if((g!=a)&&(g!=b)&&(g!=c)&&(g!=d)&&(g!=e)&&(g!=f))
for(int h=1;h<9;h++){
if((h!=a)&&(h!=b)&&(h!=c)&&(h!=d)&&(h!=e)&&(h!=f)&&(h!=g))
{
printf("%d%d%d%d%d%d%d%d\n",a,b,c,d,e,f,g,h);
n++;
}
}
}
}
}
}
}
}
}
}
}
}
}}}
printf("\n总共有%ld个不同的排列\n");
}本回答被网友采纳
相似回答