微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

每次都获得相同的输出

如何解决每次都获得相同的输出

这是一个简单的数字猜谜游戏。如果您猜对了数字,则输出“ You win !!!”,但是如果尝试次数numberofguesses)超出,则应输出“ You输”,但显示为“ You win !!”。 !”即使我在numberofguesses循环之后检查了secretnumguesswhile的值。简单地说,我是一个初学者。

#include <iostream>
using namespace std;

int main()
{
    int secretnum = 7;
    int guess = 0;
    int numberofguesses = 3;
    while (secretnum != guess && numberofguesses != 0) {
        cout << "enter your guess: ";
        cin >> guess;
        --numberofguesses;
    }
    if (secretnum = guess && numberofguesses != 0) {
        cout << "You win!!!";
    }
    else
    {
        cout << "You lose";
    }
}

解决方法

您将 assignment 运算符= comparison 运算符==相混淆。

此行:

 if (secretnum = guess && numberofguesses != 0) 
            cout << "You win!!!";
        

将其更改为:

if (secretnum == guess && numberofguesses != 0) {
        cout << "You win!!!";

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。