在终止值C ++之前查找序列的最后一个值

时间:2016-05-18 22:49:26

标签: c++ loops increment

在这个循环中,x增加了太多次。

int x = 0;
while (x < 10)
{
    x = x + 3;
}
cout << x;

这个输出是12,当我希望它是9.一般来说,我如何找到一个限制的序列的最后一个值(在这种情况下为9)(在这种情况下为10)。

3 个答案:

答案 0 :(得分:3)

例如:

    int last = 0;
    for (int x = 0; x < 10; x+=3)
    {
        last = x;
    }
    cout << last;

或:

int x = 0;
while (x < 10)
{
    x = x + 3;
}
cout << x - 3;

或:

int x = 0;
int last = 0;
while (x < 10)
{
    last = x;
    x = x + 3;
}
cout << last;

或:

int x = 0;
while (x + 3 < 10)
{
    x = x + 3;
}
cout << x;

答案 1 :(得分:2)

使用您的代码,您可以尝试:

int x = 0;
while (x+3 < 10)
{
    x = x + 3;
}
cout << x;

答案 2 :(得分:1)

如果您想查看最后一个值,最好将其减少与增加它相同的数量。

int x = 0;
while (x + 3 < 10)
{
x = x + 3;
}
x = x -3;

另一种方法是在循环中使用一个break语句,并使用一个合适的条件来保留它。