C 猜测游戏错误与某事

c++ guessing game error with if or something

本文关键字:错误 游戏      更新时间:2023-10-16

我一直在尝试制作C 猜测游戏,我不知道应用程序有什么问题。

错误是与if语句有关的。它具体地说:

error: expected unqualified-id before 'if'而且,当我做一些使运行

的事情时,它总是会创建我意识到的相同数字

以下是我的应用程序:

#include <iostream>
#include <cstdlib>
#include <time.h>
#include <string>
using namespace std;
int main()
{
    int svorighet = 0;
    int nummer = rand() % 10 + 1;
    int nummer1 = rand() % 100 + 1;
    int nummer10 = rand() % 1000 + 1;
    int gissatNummer = 0;
    int gissningsAntal = 1;
    string val = "";
bool spelaIgen = true;
while (spelaIgen == true)
{
    srand(time( NULL));
    cout << "välj en svårighet, 1 = 1-10, 2 = 1-100, 3 = 1-1000";
    cin >> svorighet;
    if (svorighet == 1)
    {
        bool gissning = false; //denna blir "true" när while loopen är gjord
        while (gissning == false)
        {
            if(gissningsAntal == 1)
            {
                cout << "Gissa en siffra: ";
            }
            else
            {
                cout << "Gissa igen!: ";
            }
            cin >> gissatNummer;
            if (gissatNummer == nummer)
            {
                cout << "Grattis, du gissade rätt med " << gissningsAntal << " försök." << endl;
                gissning = true;
            }
            else
            {
                gissningsAntal++;
                if(gissatNummer < nummer)
                {
                    cout << "det är mera";
                }
                if(gissatNummer > nummer)
                {
                    cout << "det är mindre";
                }
            }
        }
        cout << "tryck på J för att spela igen, vilken som hälst annan för att stänga: ";
        cin >> val;
        if(val != "J" && val != "j")
        {
            spelaIgen = false;
        }
    }
}
 if (svorighet == 2)
    {
        bool gissning = false; //denna blir "true" när while loopen är gjord
        while (gissning == false)
        {
            if(gissningsAntal == 1)
            {
                cout << "Gissa en siffra: ";
            }
            else
            {
                cout << "Gissa igen!: ";
            }
            cin >> gissatNummer;
            if (gissatNummer == nummer1)
            {
                cout << "Grattis, du gissade rätt med " << gissningsAntal << " försök." << endl;
                gissning = true;
            }
            else
            {
                gissningsAntal++;
                if(gissatNummer < nummer1)
                {
                    cout << "det är mera";
                }
                if(gissatNummer > nummer1)
                {
                    cout << "det är mindre";
                }
            }
        }
        cout << "tryck på J för att spela igen, vilken som hälst annan för att stänga: ";
        cin >> val;
        if(val != "J" && val != "j")
        {
            spelaIgen = false;
        }
    }
}
 if(svorighet == 3)
    {
        bool gissning = false; //denna blir "true" när while loopen är gjord
        while (gissning == false)
        {
            if(gissningsAntal == 1)
            {
                cout << "Gissa en siffra: ";
            }
            else
            {
                cout << "Gissa igen!: ";
            }
            cin >> gissatNummer;
            if (gissatNummer == nummer10)
            {
                cout << "Grattis, du gissade rätt med " << gissningsAntal << " försök." << endl;
                gissning = true;
            }
            else
            {
                gissningsAntal++;
                if(gissatNummer < nummer10)
                {
                    cout << "det är mera";
                }
                if(gissatNummer > nummer10)
                {
                    cout << "det är mindre";
                }
            }
        }
        cout << "tryck på J för att spela igen, vilken som hälst annan för att stänga: ";
        cin >> val;
        if(val != "J" && val != "j")
        {
            spelaIgen = false;
        }
    }
}
return 0;
}

您有两个额外的 }'s。一旦我将它们删除,它就可以了。