我正在编写一个简单的C程序,它将硬币投掷100000次并计算使用srand和rand投掷多少个头和多少尾巴.这是我有的:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(void){
int i;
int h=0;
int t=0;
int n;
for(i=0;i<100000;i++){
srand(time(NULL));
n=rand()%2;
if(n==0){
h++;
}
else {
t++;
}
}
printf("%d heads\n", h);
printf("%d tails\n", t);
return EXIT_SUCCESS;
}
Run Code Online (Sandbox Code Playgroud)
然而,在运行程序时,我有时会获得100000个头和0个尾部,有时会有0个头和100000个尾部,有时我会在头部和尾部得到随机数,但不会有任何50%的头部50%尾部.
我错过了什么吗?谢谢!
c ×1