1 /*11 【程序 11 求不重复数字】 2 题目:有 1、2、3、4 这四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 3 程序分析:可填在百位、十位、个位的数字都是 1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。 4 */ 5 6 7 /*分析 8 * 根据提示,三个位子分别放入这个四个数字,可以用三重for循环,然后添加if条件排除掉有重复的组合,就可以得到所有的无重复三位数 9 * 另外,加一个count计数器,没有一个满足的数字就加1,就能得到有多少个 10 * */ 11 12 //【注】如果有0的存在,要注意百位不能为0; 13 14 package homework; 15 16 public class _11 { 17 18 public static void main(String[] args) { 19 // 声明计数器count 20 int count=0; 21 //第一层循环表示百位 22 for (int i = 1; i<=4; i++) { 23 //第二层循环表示十位 24 for (int j = 1; j <=4; j++) { 25 //添加if条件排除十位和百位相同的三位数 26 if(i==j) { 27 continue; 28 } 29 else { 30 //第三层循环表示个位 31 for (int k = 1; k <=4; k++) { 32 //添加if条件判断是否有重复数字 33 if((i==k)||(j==k)) { 34 continue; 35 } 36 else { 37 System.out.print(i*100+j*10+k+" "); 38 count++; 39 } 40 } 41 } 42 43 } 44 System.out.print("\n"); //排版好看 45 } 46 System.out.println("满足条件的三位数有"+count+"个"); 47 48 } 49 50 }
原文地址:https://www.cnblogs.com/scwyqin/p/12297279.html
时间: 2024-08-30 13:37:40