rand()與RAND_MAX

初入茅廬小菜雞發表於2020-12-15

rand()產生一個0到0x7ffff即0到32767之間的隨機數
RAND_MAX即為0x7ffff。
所以rand()/RAND_MAX可表示為在[0,1]區間內的隨機數
rand()/(RAND_MAX+1)可表示為在[0,1)區間內的隨機數
例:
實現(0,10)之間的隨機數

double random(double start,double end)
{
	return start + (end - start) * rand() / (RAND_MAX + 1.0);
}
random(0,10)//呼叫

相關文章