未在范围内声明,初学者蜗牛赛车游戏

Lon*_*rts 1 c++

好吧,我用Google搜索并在此网站上找到了一些关于此问题的答案,但答案对我来说太不一样了,我真的对它们做了什么,所以我再次提出要求并希望最好.

我在g ++中遇到以下错误;

snailrace.cpp: In function ‘int race(int, int)’:

snailrace.cpp:101:21: error: ‘rand’ was not declared in this scope


snailrace.cpp:123:3: error: a function-definition is not allowed here before ‘{’ token


snailrace.cpp:128:3: error: expected ‘}’ at end of input
Run Code Online (Sandbox Code Playgroud)

我想我能解决所有问题,除了snailrace.cpp:101:21: error: ‘rand’ was not declared in this scope我尝试过的一切,它都没有帮助!我该如何解决!?这让我疯了.谢谢!

//The snail race.

#include <iostream>
#include <ctime>

//Function declaration.
int race(int,int); 
void race(void);
int menu(void);
int placebet(int);
void init(void);

//Variables 
int money = 200; 

//the main function
int main(void)
{
  using std::cout; 

  init();
  int user_respons;

  cout << "Welcome to the snail race!\n"; 

  while(user_respons = menu())
  {

    switch(user_respons)
    {
      case 1:
      case 2:
      case 3: 
    ::money +=
    race(placebet(user_respons), user_respons); 
    break;

      case 4: //The user did not bet
    race();
    break; 
  }
}
return 0; 

}

//Display user menu and sends user selection to the main function
int menu( void )
{
  using std::cout;
  using std::cin; 

  int user_respons;

  cout << "You have " << money << " USD.\n";

  do
  {
    cout << "Race Menu: \n\n"
     << "1) Bet on snail 1\n"
     << "2) Bet on snail 2\n"
     << "3) Bet on snail 3\n"
     << "4) Do not bet, just watching"
     << "0) Leave the race"; 

    cin >> user_respons;
  }
  while(user_respons < 0 && user_respons > 4);
  return user_respons;
}

//Decide how much one person will bet on a snail.

int placebet(int user_respons)

{
  using std::cout;
  using std::cin;

  int bet_amount;

  cout << "Snail " << user_respons << " is a good choice!\n";
  cout << "How much would you like to bet on your snail?\n"; 
  cin >> bet_amount; 
  return bet_amount;
}

//if just watching the race
void race(void) 
{
  race(0, 0); 
}

//if they are betting money. 
int race(int money, int user_respons)
{
  using std::cout; 
  using std::cin; 

  //Stores random number
  int winner = rand() % 3 + 1; 

  cout << "And the snails are off!\n"; 
  cout << "Look at them go! \n"; 
  cout << "The winner snail is " << winner << "\n"; 

  if(winner == user_respons)
  {
    cout << "You win!\n";

    return money * 2; 
  }
  else 
  {
  cout << "You lost.\n"; 

  return money / 2;
  }


  //Handles the program start random
  void init(void) 
  {
    using std::srand; 
    using std::time; 

    srand(time(0)); 
  }
Run Code Online (Sandbox Code Playgroud)

Joe*_*Joe 17

randcstdlib你没有包括的一部分.加

#include <cstdlib>
Run Code Online (Sandbox Code Playgroud)