有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?

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

分析:先各定义百位、十位、个位都在1-4之间,三个数重复组合,然后筛选出符合互不相同且无重复的三位数并输出

实现代码:

#include //头文件引用
using namespace std;//命名空间
int main()//主函数
{
	//题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?
	int num = 0;//定义一共输出0组三位数
	for (int bai = 1; bai <= 4; bai++)//定义一个百位在1-4之间在百位重复
	{
		for (int shi = 1; shi <= 4; shi++)//定义一个十位在1-4之间重复
		{
			for (int ge = 1; ge <= 4; ge++)//定义一个个位在1-4之间重复
			{
				if (bai != shi && shi != ge && ge != bai)//当百位、十位、各位各不相同
				{
					int digits = bai * 100 + shi * 10 + ge;//百位*100+十位*10+个位就是一个符合的三位数digits
					cout << digits << endl;//输出这个三位数
					num++;//成功输出一个加1,最后结果就是几组
				}
			}
		}
	}
	cout << "一共有" << num << "组" << endl;//输出一共有几组
	system("pause");//暂停函数
	return 0;//返回到主程序
}

运行结果:

有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?_第1张图片

你可能感兴趣的:(c++,开发语言)