C++-使用循环的另一种方法

C++ - Another way to use loops

本文关键字:另一种 方法 循环 C++-      更新时间:2023-10-16

是否有其他方法可以键入此代码?

我希望它更清楚。

#include <iostream>
#include <string>
#include <stdlib.h>
using namespace std;
int main(){
    string x;
    for (x; x != "EXIT";){
        cin >> x;
        cin.ignore();
        if (x == "EXIT"){
            return EXIT_SUCCESS;
        }
    }
}

当您在控制台中键入"EXIT"时,该代码应该关闭

我发现在谷歌上很难找到正确的答案,所以我决定问你们
既然我知道Stackoverflow对任何人都不友好,我在这里犹豫了一下。

如果同时要测试x != "EXIT",则不需要测试if (x == "EXIT")。只需:

int main(){
    string x;
    while (x != "EXIT"){
        cin >> x;
        cin.ignore();
    }
    return EXIT_SUCCESS;
}

或者,对于(n个空)for循环:

int main() {
    for (string x; x != "EXIT"; (cin >> x).ignore()) ;
    return EXIT_SUCCESS;
}

没有循环-您可以编写递归函数。

没有条件(al)

虽然你所拥有的是有效的,但有些人可能会说一个更干净的循环可能如下:

while (true)
{
    cin >> x;
    if (x == "EXIT")
        return EXIT_SUCCESS;
}

这消除了for循环中的额外条件。如果你想在没有循环的情况下完成它,你可以编写一个使用递归的函数。

int func() {
    int x;
    cin >> x;
    if (x == "EXIT")
        return EXIT_SUCCESS
    return func();
}

如果您正在寻找一种更干净的方式来呈现相同的功能,您可以尝试以下方法:

int main()
{
    string x;
    while(x != "EXIT")
    {
        cin >> x;
        cin.ignore();
    }
    return EXIT_SUCCESS;
}