C语言经典例题(1)

题目:有1,2,3,3个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

提示:填在三个位置上的数字是1,2,3,我们可以先全排列就会有重复,再将重复剔除即可。

#include
void main()
{
	int a, b, c,e=0;
	for (a = 1;a <= 3;a++)//首先运用三重循环,得到有重复数字的三位数;
	{
		for (b = 1;b <= 3;b++)
		{
			for (c = 1;c <= 3;c++)
			{
				if (a != b && b != c && c != a) {//再用判断语句将有重复数字的三位数去除;
					e++;                         //我们知道重复数字即是三位数有相等的情况,将其去除即可;
					printf("%d%d%d\n",a, b, c);
			}
				}			
		}
	}
	printf("能组成%d个互不相同且无重复数字的三位数", e);
}

欢迎指正。

你可能感兴趣的:(c语言)