如何在switch语句中使用随机生成的数字

How to use randomly generated number in switch statement?

本文关键字:随机 数字 switch 语句      更新时间:2023-10-16

我正在制作一个简单的程序,从我在switch语句案例中写的句子中显示人的行为。我想随机生成一个介于1和10之间的数字,并在"开关(这个地方)"中使用它。到目前为止,我已经编写了以下代码并停留在这里。。

#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
int rand_range(int low, int high)
{
  return rand()%(high-low) + low;
}
int main()
{
    srand(time(NULL));
    cout<<"Hi!, this program tells you about your behaviour"<<endl;
    cout<<"press enter to continue";
    cin.get();
    switch(    )
    {
    case 1:
        {
            cout<<"you are rude !";
        }
    case 2:
        {
            cout<<"you are smart";
        }
    case 3:
        {
            cout<<"you try to prove yourself special all the time";
        }
    case 4:
        {
            cout<<"you are good in sarcasm";
        }
    case 5:
        {
            cout<<"you look dumb, but deep inside you are intelligent";
        }
    case 6:
        {
            cout<<"you are always ready for a debate with someone";
        }
    case 7:
        {
            cout<<"you are very lazy";
        }
    case 8:
        {
            cout<<"you are dumber than what you look";
        }
    case 9:
        {
            cout<<"you always try to help others";
        }
    case 10:
        {
            cout<<"you have good decision making capabilities";
        }
    default:
        {
            cout<<"something wrong";
        }
    }
}

在括号中的switch语句中,您需要(rand() % 10) + 1。在为随机数生成器设定种子后,rand()函数将返回一个介于0和RAND_MAX之间的数字。RAND_MAX是一个很大的数字。

要得到一个范围内的随机数,一个标准的技巧是使用%运算符。rand() % 10返回一个介于0和9之间(包括0和9)的数字。加1可以得到1到10的范围。