1、c語言生成隨機數
需要的頭文件:#include<stdlib.h>
#include<time.h>
需要使用的函數:rand()、srand()、time()
rand()函數的使用
int n = rand();
生成一個隨機數n
接下來,來點更靈活的,讓n的取值在-5~55之間:
於是我們想到了用取模,0<= n%61 <=60,n%61減5,得 -5<= n%61-5 <=55,則
int x = n%61-5; // 等價於 int x = rand()%61-5;
生成-5~55范圍內的隨機數x,其它任何范圍同理。
srand()和time()函數的使用
上述生成的隨機數每次運行都是相同的,並非是真正意義上的隨機數,要生成真正意義上的隨機數需要1.2中兩個函數的輔助。srand()是種子函數,1.1中未調用該函數,系統默認種子數為1,所以每次運行都是同一個值。time()是調用系統時間的函數。
生成真正意義上的隨機數代碼如下:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
srand(time(0));
int x = rand()%61-5;
return 0;
}
2、c++生成隨機數
c++生成隨機數和c同理,只要改一下頭文件即可,代碼如下:
#include<iostream>
#include<cstdlib>
#include<ctime>
int main()
{
srand(time(0));
int x = rand()%61-5;
return 0;
}