不重复输出由1,2,3三个数字组成的三位数
第一次写博客啊,有哪些地方做得不好,大家尽管批评,不用客气
今天刚考完Java,遇到一道题,大致是这样的:
(使用for循环语句,输出由1,2,3三个数字组成的所有三位数,要求不重复)
跟大家说一下我的思路啊,先给3个变量分别赋值1,2,3,之后互换后面两个变量的值,最后再让这两个变量中,交换值后值较小的变量减1(唉,我感觉我用文字说不清楚,看一下代码可能更容易懂)
下面是我当时写的代码:
public class OutputThreeNumber
{
public static void main(String[] args)
{
ThreeNumber();
}
public static void ThreeNumber()
{
// 输出由1,2,3三个数字组成的三位数,要求不重复
int n = 0, j = 2, k = 3;
for(int i = 1 ; i < 4 ; i++)
{
System.out.print(100 * i + 10 * j + k + " ");
// k 和 j 互换值
n = k;
k = j;
j = n;
System.out.print(100 * i + 10 * j + k + " ");
--k;
}
}
}
输出结果如下:
那啥,我能力有限。当时想的是:赶紧考完,赶紧去吃饭,也没想别的。现在想想:如果它题目要输出1,2,3,4四个数字的四位数呢?甚至是1,2,···,n的n个数字的n位数呢?(这个问题到后面可能要用到大数值)
哈哈哈哈,还好没考,我想了一下这两个问题,还没想出来,等我有思路再补充哈
欢迎各位同志批评指正,当然啦,如果有其他方法,也可以给我评论留言,大家共同进步!!!