为什么这个C ++代码不起作用(简单)

时间:2017-12-31 11:26:36

标签: c++ while-loop

我基本上已经开始学习C ++了。我以前在python 3.6上做过编码,所以我对这个结构有点不熟悉。提前抱歉问这么简单的问题。问题:什么都没有作为输出。期望的输出:代码中看到的4个句子。我做错了什么?

#include <iostream>
using namespace std;
void mice(int);
void run(int);

int main()
{
    mice(2);
    run(2);
    return 0;
}
void mice(int n)
{
    while (n > 0);
    {
        cout << "Three blind mice";
        n --;
    }
}
void run(int n)
{
    while (n > 0);
    {
        cout << "See how they run";
        n --;
    }
}

2 个答案:

答案 0 :(得分:2)

while (n > 0);导致无限循环。它应该是while (n > 0)

相关帖子:https://softwareengineering.stackexchange.com/questions/202734/putting-semicolons-after-while-and-if-statements-in-c

答案 1 :(得分:1)

在包含一段时间的行... while (n > 0); ;完成语句,使其位于while循环中,但n永远不会更改。

如果删除;,则{}之间的循环体将执行。

e.g。

void mice(int n)
{
    while (n > 0)
    {
        cout << "Three blind mice";
        n --;
    }
}