【发布时间】:2021-12-31 10:25:21
【问题描述】:
我正在制作一个剪刀石头布游戏,其中计算机在每一轮中随机选择一个字符“r”、“p”或“s”。我该怎么做?
char random_array[3] = {'r', 'p', 's'};
【问题讨论】:
我正在制作一个剪刀石头布游戏,其中计算机在每一轮中随机选择一个字符“r”、“p”或“s”。我该怎么做?
char random_array[3] = {'r', 'p', 's'};
【问题讨论】:
最简单的方法是生成一个介于零和数组大小减一之间的随机数。然后,您可以使用该数字作为数组的索引。使用rand() 的示例:
#include <cstdlib>
#include <ctime>
int main()
{
srand(time(NULL)); // Seed the random number generator
char random_array[3] = {'r', 'p', 's'};
unsigned int randomIndex = rand() % 3; // Random number between 0 and 2
char randomCharacter = random_array[randomIndex];
};
如果你想要真正的随机值,那么有比rand() 更好的选择,但对于一个简单的游戏来说它应该可以正常工作。
【讨论】:
time(NULL) 会在多次调用时返回相同的值来电。没有办法解决这个问题,并且在运行时间比这个更长的程序中这不是问题。 +1。