循环增加不起作用

Looping Increment Not Working

本文关键字:不起作用 增加 循环      更新时间:2023-10-16

我是编程的初学者,并且是论坛的新手。我一直在研究一个开始项目,这是一款Hangman的游戏。我正在使用迭代常数,数字guess来跟踪用户输入的猜测。但是,我的程序没有正确迭代,我无法理会为什么出于任何原因。任何帮助都非常感谢!

#include <iostream>
#include <string>
using namespace std;
int main()
{
    string userWord = " ";
    char userLetter = ' ';
    int numberGuesses = 0;
    string board1 =
        " -------|n"
        " |      |n"
        "        |n"
        "        |n"
        "        |n"
        "        |n"
        "      -----";
    string board2 = 
        " -------|n"
        " |      |n"
        " O      |n"
        "        |n"
        "        |n"
        "        |n"
        "      -----";
    string board3 = 
        " -------|n"
        " |      |n"
        " O      |n"
        " |      |n"
        "        |n"
        "        |n"
        "      -----";
    string board4 = 
        " -------|n"
        " |      |n"
        " O      |n"
        "-|      |n"
        "        |n"
        "        |n"
        "      -----";
    string board5 = 
        " -------|n"
        " |      |n"
        " O      |n"
        "-|-     |n"
        "        |n"
        "        |n"
        "      -----";
    string board6 = 
        " -------|n"
        " |      |n"
        " O      |n"
        "-|-     |n"
        "/       |n"
        "        |n"
        "      -----";
    string board7 = 
        " -------|n"
        " |      |n"
        " O      |n"
        "-|-     |n"
        "/ \     |n"
        "        |n"
        "      -----";
    cout << "Enter a word to guess: ";
    cin >> userWord;
    for (int i = 0; i < userWord.length(); i++)
       {
           userWord[i] = toupper(userWord[i]);
       }
    cout << "You entered: " << userWord << endl;

    do 
    {
        if (numberGuesses = 0)
        {
            cout << board1;
        }    
        if (numberGuesses = 1)
        {
            cout << board2;
        }
        else if (numberGuesses = 2)
        {
            cout << board3;   
        }
        else if (numberGuesses = 3)
        {
            cout << board4;
        }
        else if (numberGuesses = 4)
        {
            cout << board5;
        }
        else if (numberGuesses = 5)
        {
            cout << board6;
        }
        else if (numberGuesses = 6)
        {
            cout << board7;
        }
        cout << "nEnter a letter to guess: ";
        cin >> userLetter;
        userLetter = toupper(userLetter);
        cout << "You entered: " << userLetter << endl;
        if (userWord.find(userLetter) != string::npos)
            cout << userLetter << " is in the word to guess." << endl;
        else
            cout << userLetter << " is NOT in the word to guess." << endl;
        numberGuesses++;
    }
    while (numberGuesses <= 6);
    return 0;
}

=是分配操作员。要检查平等,您应该使用==操作员:

if (numberGuesses == 0) {
    // Here -------^
    // (and do the same for the other conditions)