作爲C的新手,我試圖熟悉隨機數生成器。我知道如何在特定時間間隔(如1和100)之間得到一個隨機數,但我很好奇,是否有可能得到一個隨機數,即範圍在數組元素內?我會爲此使用rand()嗎?我試圖在網上搜索一些答案,但找到了解決方案。舉例來說,如果我有一個數組:隨機數,範圍是數組的元素
Array[10] = {50,26,29,10,78,12,45,83,39,55};
,我想創建一個隨機數的結尾值是數組中的數字,我會怎麼做這在C?
作爲C的新手,我試圖熟悉隨機數生成器。我知道如何在特定時間間隔(如1和100)之間得到一個隨機數,但我很好奇,是否有可能得到一個隨機數,即範圍在數組元素內?我會爲此使用rand()嗎?我試圖在網上搜索一些答案,但找到了解決方案。舉例來說,如果我有一個數組:隨機數,範圍是數組的元素
Array[10] = {50,26,29,10,78,12,45,83,39,55};
,我想創建一個隨機數的結尾值是數組中的數字,我會怎麼做這在C?
簡單地生成一個隨機數,它是數組中的索引,並讀出該位置的數字。
const int index = rand() % (sizeof Array/sizeof *Array);
const int value = Array[index];
請注意,使用這樣的模不會給你最好的隨機數,但它應該至少工作。
嘗試獲得隨機索引。
index = rand() % 10;
A[index] // This gets a random value in your range
隨機播放索引並從數組中選擇數字。 –
'隨機的人'會推動你走上正軌。 –
爲什麼你沒有得到0到9之間的隨機數並輸出arr [randomnumber]? – Raman