0

这么说length=11,我想2在每个周期中减去它,直到它达到1. 我的for方法代码是否正确?while循环会是什么?

for(int i =length ; i!=1; i-=2)

编辑:这是问题。为了解决这个问题,我做了一个 if 语句,如果 length%2==1 我将使用上面列出的 for 循环。然后我要写一个 else 说明修改上面的代码,让它停在 0。这有意义吗?

数字输入的奇数位置(从右到左从 1 开始作为最右边的数字)的所有数字的总和。(例如,如果输入为 432677,则总和将为 7 + 6 + 3 = 16。)

4

2 回答 2

4
  1. 因为不是一种方法。这是一种语言结构。只是挑剔。

  2. 几乎。如果i开始,即使你永远不会结束。利用:

    for(int i =length ; i>1; i-=2)
    
于 2013-09-10T23:46:21.340 回答
3

如果 1 包含在内,您可以尝试:

for(int i = length; i >= 1; i -= 2){ ... }

或者

for(int i = length; i > 0; i -= 2){ ... }

如果 1 是独占的,您可以尝试:

for(int i = length; i > 1; i -= 2){ ... }
于 2013-09-10T23:46:06.543 回答