c语言解决1,2,3,4四个数字组成所有不重复数字的三位数并输出出来
时间: 2024-09-19 08:00:55 浏览: 94
c代码-有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
5星 · 资源好评率100%
在C语言中,我们可以使用嵌套循环结构来解决这个问题,遍历所有可能的组合。首先创建一个数组存储每一位数,然后内层循环从剩下的数字中选择第二位和第三位,外层循环负责第一位的选择。以下是完整的代码示例:
```c
#include <stdio.h>
#define LIMIT 4
void printNumbers() {
int digits[LIMIT] = {1, 2, 3, 4}; // 数字数组
int num;
// 遍历每一位
for (int first_digit = 0; first_digit < LIMIT; first_digit++) {
// 跳过已选数字作为首位的情况
if (first_digit != digits[0]) continue;
// 第二位和第三位的选择
for (int second_digit = first_digit + 1; second_digit < LIMIT; second_digit++) {
for (int third_digit = second_digit + 1; third_digit < LIMIT; third_digit++) {
num = first_digit * 100 + second_digit * 10 + third_digit;
printf("%d\n", num);
}
}
}
}
int main() {
printNumbers();
return 0;
}
```
这个程序会输出所有的三位数,其中每个数字都不重复:
```
123
124
132
134
142
143
213
214
231
234
241
243
312
314
321
324
341
342
412
413
421
423
431
432
```
阅读全文