芜湖,自己徒手完成的第一个Java题,虽然题目简单到想思路5秒钟,但是配置环境和玩明白编译器用了半天时间QWQ
总体思路分数位由高到低选数,每位从1到4遍历,每位都不一样就可以输出~
编译时出现编码问题,通过encoding解决了,又get一个小知识( •̀ ω •́ )y
/* 1、2、3、4四个数字,它们能组成多少个互不相同且无重复数字的三位数?每行打印四个三位数*/
public class howmany
{
public static void main(String[] args){
int sum=0; //用于统计这样的数字总数
int huanHang=0; //用于计数,每四个换行
for(int baiWei=1;baiWei<=4;baiWei++)
{
//按照百十个三位进行循环
for(int shiWei=1;shiWei<=4;shiWei++)
{
if(baiWei!=shiWei){//百位和十位不同时再进入个位
for(int geWei=1;geWei<=4;geWei++)
{
if(baiWei!=geWei&&shiWei!=geWei)
{
System.out.print(baiWei);
System.out.print(shiWei);
System.out.print(geWei);
System.out.print(" ");
sum++;
huanHang++;
if(huanHang==4) //每行四个数字换行
{System.out.print("\n");
huanHang=0;}
}
}
}
}
}
System.out.println("这样的数字共有"+sum+"个");
}
}