如何在C中的循环中生成不同的随机数?
我想做一个用6个骰子的骰子游戏。每次掷骰我都能生成一个随机数,问题是如果生成的数字是1,每个骰子都是1,我就会得到相同的数字。有没有办法使每个骰子的数字不一样如何在C中的循环中生成不同的随机数?,c,loops,random,C,Loops,Random,我想做一个用6个骰子的骰子游戏。每次掷骰我都能生成一个随机数,问题是如果生成的数字是1,每个骰子都是1,我就会得到相同的数字。有没有办法使每个骰子的数字不一样 #include <stdio.h> #include <stdlib.h> #include <math.h> #include <time.h> int main() { int i; int diceRoll; srand(time(NULL));
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
int main() {
int i;
int diceRoll;
srand(time(NULL));
int r = (rand()%6)+1;
printf("\t\t\t Welcome to Dice Game!\n");
for( i = 0; i < 6; i ++){
diceRoll= r;
printf(" %d \n", diceRoll);
}
return 0;
}
只需将其放入for循环:
并在其外部声明r,如下所示:
int r;
或者你不使用r,程序看起来像这样
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
int main() {
int count, diceRoll;
srand(time(NULL));
printf("\t\t\t Welcome to Dice Game!\n");
for(count = 0; count < 6; count ++){
diceRoll = (rand()%6)+1;
printf(" %d \n", diceRoll);
}
return 0;
}
你考虑过< /P>吗?
for( i = 0; i < 6; i ++){
diceRoll= (rand()%6) + 1;
printf(" %d \n", diceRoll);
}
我想我定义r有点太早了。谢谢你的帮助!
for( i = 0; i < 6; i ++){
diceRoll= (rand()%6) + 1;
printf(" %d \n", diceRoll);
}