使用Java写出代码,题目为有1,2,3,4四个数字,能组成多少个互不相同且一个数字中无重复数字的三位数?要求系统输出所有三位数,并输出总个数,要求一行10个三位数,用空格分隔
时间: 2024-09-27 10:18:12 浏览: 36
这是一个经典的排列组合问题,我们可以使用Java的循环和字符串拼接的方式来解决。首先确定百位、十位和个位的数字范围,然后按照每个位置可以取到的不同数字进行递增的组合。
```java
public class Main {
public static void main(String[] args) {
int[] digits = {1, 2, 3, 4};
int count = 0;
for (int i = 0; i < digits.length; i++) {
for (int j = i + 1; j < digits.length; j++) {
for (int k = j + 1; k < digits.length; k++) {
String number = Integer.toString(digits[i]) + Integer.toString(digits[j]) + Integer.toString(digits[k]);
System.out.print(number + " ");
count++;
if ((count % 10) == 0) {
System.out.println(); // 每打印完10个数换行
}
}
}
}
System.out.println("\nTotal unique three-digit numbers with no repetition: " + count);
}
}
```
运行这段代码,它会输出所有符合条件的三位数,并在每行显示10个,最后输出总的个数。注意,这将生成所有的6个可能的三位数(因为有4个不同的数字可以选择,每个位置都有4种选择)。如果不需要空格分隔,只需去掉`System.out.print(" ")`即可。
阅读全文