所以我有一个结构:
enum input_result get_human_player(struct player* human)
{
char playerName[NAMELEN];
printf("What is your name? ");
fgets(playerName, NAMELEN, stdin);
strcpy((*human).name, playerName);
(*human).type = HUMAN;
(*human).thiscolor = C_WHITE;
(*human).counters = 0;
return FAILURE;
}
如何制作它以便随机将其分配给C_WHITE或C_RED,并且有50/50的机会?
答案 0 :(得分:1)
rand
将返回一个随机整数。假设它是均匀分布的(可能不是真的,因为每个实现都不能保证),这个数字将是奇数甚至是50/50的机会。使用这个事实:
if (rand() % 2)
{
//Do the first thing
}
else
{
// Do the other one
}
**别忘了给随机数生成器播种。