这个想了俩小时了,请各位工程师看一下

问题是:1-5所能组成的所有序列并进行输出,用C实现啊


#include<stdio.h>
int main(){
    int a[5]={1,2,3,4,5},i,j,k,m,n,cont=0;
    for(i = 0;i<5;i++){
        for(j=0;j<5;j++){
            for(k=0;k<5;k++){
                for(m=0;m<5;m++){
                    for(n=0;n<5;n++){
                        if((i!=j&&i!=k&&i!=m&&i!=n)&&(j!=k&&j!=m&&j!=n)&&(k!=m&&k!=n)&&(m!=n)){
                            printf("%8d",a[i]*10000+a[j]*1000+a[k]*100+a[m]*10+a[n]);
                            cont++;
                            if((cont)%10==0) printf("\n");
                        }
                    }            
                }
            }
        }
    } 
    printf("  共%d种",cont);
}

不知道有没有简单方法 这个反正5层循环保证每个数不相等 乘积和就行

img