Select 使用rand()从2个特定数字中选择一个

Select 使用rand()从2个特定数字中选择一个,select,random,numbers,Select,Random,Numbers,我试图调用rand()从两个数字中选择一个,1或2 因此:(伪) 如何做到这一点? 也许可以称这些变量为 int first=1; int秒=2; 然后从那里开始工作?假设您希望每个值的概率相等,您可以实现这样一个简单的函数,该函数测试rand()

我试图调用rand()从两个数字中选择一个,1或2

因此:(伪)

如何做到这一点? 也许可以称这些变量为 int first=1; int秒=2;
然后从那里开始工作?

假设您希望每个值的概率相等,您可以实现这样一个简单的函数,该函数测试rand()以确定返回两个值中的哪一个:

int rand_1_2(int first, int second)
{
    return rand() < RAND_MAX / 2 ? first : second;
}
int rand_1_2(int first,int second)
{
返回rand()
我支持这样的东西

double rnd = rand();
if(rnd < 1/2)
{
     printf("first");
}
else
{
     printf("second");
}
double rnd=rand();
如果(rnd<1/2)
{
printf(“第一”);
}
其他的
{
printf(“第二”);
}
double rnd = rand();
if(rnd < 1/2)
{
     printf("first");
}
else
{
     printf("second");
}