无重复组合使用for循环控制台输出4567,能组成多少个互不相同且无重复数字的三位数都是多少
时间: 2023-12-17 14:01:21 浏览: 170
题目要求用数字4、5、6、7组成三位数,且三位数中的数字互不相同且没有重复。根据题目要求,首先可以确定三位数的百位数只能是4、5、6、7中的一个数字,因此可以使用一个for循环来遍历这四个数字。然后,在确定百位数的情况下,十位数和个位数的数字就可以从剩下的3个数字中选择。同样地,可以使用两个嵌套的for循环来遍历剩下的数字。
那么具体的实现如下:
```
int count = 0; //记录满足条件的三位数的个数
for (int i = 4; i <= 7; i++) { //百位数循环
for (int j = 4; j <= 7; j++) { //十位数循环
if (j != i) { //十位数与百位数不能相同
for (int k = 4; k <= 7; k++) { //个位数循环
if (k != i && k != j) { //个位数与百位数和十位数都不能相同
int num = i * 100 + j * 10 + k; //将三个数字组成一个三位数
cout << num << endl; //输出满足条件的三位数
count++;
}
}
}
}
}
cout << "满足条件的三位数的个数为:" << count << endl;
```
经过运行以上代码,控制台会输出所有满足条件且互不相同且无重复数字的三位数(456,457,465,467,475,476,546,547,564,567,574,576,645,647,654,657,674,675,745,746,754,756,764,765)以及满足条件的三位数的个数(24个)。
阅读全文