数组实现四个数组成三位数的不同排列(计算出排列次数)

/*有1,2,3.4四个数字,能组成多少种没有重复且不相同的三位数?*/
#include<stdio.h>
int main()
{ 
	int i,j,k,a[100],n=0;
	for(i=1;i<=4;i++)
		for(j=1;j<=4;j++)
			for(k=1;k<=4;k++)//将个位、十位、百位从1到4进行排列 
				if(i!=j&&j!=k&&k!=i)//去除相同数字的情况 
				{ 
					a[n]=i*100+j*10+k;//从n=0开始为数组赋值 
				printf("%d\n",a[n]);
					n++;//赋值之后再加,比下标多一,所以n=个数 
					
				}
```//计算个数和打印出数值,接上部

	if(i!=j&&j!=k&&k!=i)//去除相同数字的情况 
				{ 
					a[n]=i*100+j*10+k;//从n=0开始为数组赋值 
			// printf("%d\n",a[n]);
					n++;//赋值之后再加,比下标多一,所以n=个数 
					
				}
				printf("能组成%d个无重复数字的三位数\n",n); //输出n的数值 
				printf("他们分别是\n");
				for(i=0;i<n;i++)//此时n的数值已经确定为24,实现逐个输出a[] 
				{ 
				printf("%d",a[i]);
				printf("\n"); 	
				}*/
				
	return 0;
	
 } 
    原文作者:hs小徐
    原文地址: https://blog.csdn.net/weixin_46181877/article/details/111947533
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞