C++ C+中的新手+;。第一个文字游戏

C++ C+中的新手+;。第一个文字游戏,c++,C++,我学习C++并尝试创建第一个游戏。代码如下: #include <iostream> #include <string> using namespace std; void info () { int LVL = 1; int money = 1000; int EXP = 0; int work = 200; int learn = 15; int k = 0; } void menu () { inf

我学习C++并尝试创建第一个游戏。代码如下:

#include <iostream>
#include <string>

using namespace std;

void info () {
    int LVL = 1;
    int money = 1000;
    int EXP = 0;
    int work = 200;
    int learn = 15;
    int k = 0;  
}


void menu ()
{
    info ();
    char menu_items;
    cout << "Choose action: " << "\n" << "1. Work" << "\n" << "2. Learn" << endl; 
    cin >> k;

    if (k == 1){
        int money = money + work;
        cout << "U worked (+ "<< money  << " dollars)" << "\n" << endl;
    } if (k == 2) {
        int EXP = EXP + learn;
        cout << "U learned (+ " << EXP << " EXP)" << "\n" << endl;
    } else {
        cout << "ERROR" << endl;
    }
}


int main()
{   
    info ();
    while (LVL == 10) {
        cout << "End game!";
    }

    while (LVL != 10) {
    cout << "Your data: " << "\n" << "Money: " << money << "\n" << "EXP: " << EXP << "\n" << "LVL: " << LVL << "\n" << endl;
    menu ();
    }
}
#包括
#包括
使用名称空间std;
无效信息(){
int LVL=1;
整数货币=1000;
int EXP=0;
整数功=200;
int-learn=15;
int k=0;
}
无效菜单()
{
信息();
字符菜单项;

coutInfo可能应该是一个类或结构。您只想实例化它一次,并在调用过程中保留这些值

一种选择可能是:

#include <iostream>
#include <string>

using namespace std;

struct info {
    int lvl = 1;
    int money = 1000;
    int exp = 0;
    const int work = 200;
    const int learn = 15;
};

int main()
{
    info i;
    string k;
    while (i.lvl < 10)
    {
        cout << "Your data: " << "\n" << "Money: " << i.money << "\n" << "EXP: " << i.exp << "\n" << "LVL: " << i.lvl << endl;
        cout << "Choose action: " << "\n" << "1. Work" << "\n" << "2. Learn" << endl;
        cin >> k;
        if (k == "1")
        {
            i.money += i.work;
            cout << "You worked (+ " << i.work << " dollars, now " << i.money << ")" << endl;
        }
        else if (k == "2")
        {
            i.exp += i.learn;
            cout << "You learned (+ " << i.learn << " EXP, now " << i.exp << ")" << endl;
        }
        else
        {
            cout << "ERROR" << endl;
        }
    }
    cout << "You won!" << endl;
}
#包括
#包括
使用名称空间std;
结构信息{
int lvl=1;
整数货币=1000;
int exp=0;
常数int work=200;
const int learn=15;
};
int main()
{
信息一;
串k;
而(i.lvl<10)
{
不能包含

#包括

使用命名空间std;

void菜单()
{

int money = 1000;
int EXP = 0;
int work = 200;
int learn = 15;
int k = 0;

cout << "Choose action: \n 1. Work \n 2. Learn "<< endl;
    cin >> k;

if (k == 1){
    money =money + work;
    cout << "U worked (+ " << money << " dollars)" << "\n" << endl;
} if (k == 2) {
    EXP = EXP + learn;
    cout << "U learned (+ " << EXP << " EXP)" << "\n" << endl;
}
else {
    cout << "ERROR" << endl;
}
}

while(LVL!=10){


cout-Hmm..u能重写我的代码吗?我会非常感激)刚刚做了:)可能有问题,我一点也没有测试过。哇..ty)但是,“7 15[警告]非静态数据成员初始值设定项仅可用于-std=c++11或-std=gnu++11[默认启用]”什么样的C++版本你还在工作?我也应该提到你的问题并不是很好地形成;StAcExoad和你想象的有点不同。我发布了一个解决方案,希望它能帮助你提高编程效率,但通常像你这样的问题没有得到解答。
`cout << "End game!"; `