使用嵌套for循环打印数字(java)

时间:2014-01-27 14:44:20

标签: java loops for-loop printing

我正在尝试使用嵌套for循环(java)来打印以下内容:

331
330
322
311
300
222
111

我遇到了一些麻烦。到目前为止,我有:

for(int a = 3; a >=0; a--)
{
    for(int b = 3; b>=0; b--)
    {
        for(int c = 2; c>=0; c--)
        {
            System.out.println(a + " "+ b +" "+ c);
        }
    }
}

但是打印出更像这样的东西:

3 3 2
3 3 1
3 3 0
3 2 2
3 2 1
3 2 0
3 1 2
3 1 1
3 1 0
3 0 2
3 0 1
3 0 0
2 3 2
2 3 1
2 3 0
2 2 2
2 2 1
2 2 0
2 1 2

我的代码出了什么问题?如何让它打印出第一个序列,而不是第二个序列?我很确定它与中间循环有关,但我真的不确定。

谢谢!

1 个答案:

答案 0 :(得分:0)

如果你有嵌套for循环,除非你根据外循环中变量的值设置内循环的限制,内循环生成的模式(在这种情况下是第二个和第三个数字)将会在外循环的每次迭代中都是相同的。

我现在无法编码,但在我看来,如果你设置b从a运行到零,而不是从3到0,你可能会更接近你想要的。

但是,由于似乎没有你想要的模式,很难想到打印它们的算法。这些数字意味着什么?