您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關C語言如何隨機生成一個矩陣,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
生產隨機的矩陣的關鍵在于使用隨機函數rand()。
rand()
表頭文件: #include
定義函數 :int rand(void)
函數說明 :
因為rand的內部實現是用線性同余法做的,他不是真的隨機數,只不過是因為其周期特別長,所以有一定的范圍里可看成是隨機的,rand()會返回一隨機數值,范圍在0至RAND_MAX 間。在調用此函數產生隨機數前,必須先利用srand()設好隨機數種子,如果未設隨機數種子,rand()在調用時會自動設隨機數種子為1。rand ()產生的是假隨機數字,每次執行時是相同的。若要不同,以不同的值來初始化它.初始化的函數就是srand()。
返回值:
返回0至RAND_MAX之間的隨機整數值,RAND_MAX的范圍最少是在32767之間(int),即雙字節(16位數)。若用unsigned int 雙字節是65535,四字節是4294967295的整數范圍。
0~RAND_MAX每個數字被選中的機率是相同的.
基于隨機函數,使用雙重循環語句便可以生成一個隨機矩陣,下面是一個10x10隨機矩陣的代碼,數值范圍在0~1000:
#include
#include
#define M 10
#define N 10
int main(void)
{
int i = 0, j = 0;
int Arr[M][N] = {{0}};
srand(time(NULL));
for (i = 0; i < M; ++i)
{
for (j = 0; j < N; ++j)
{
Arr[i][j] = rand() % 1000;
}
}
printf("Array[%d][%d] is: \n", M, N);
for (i = 0; i < M; ++i)
{
for (j = 0; j < N; ++j)
{
printf("%d\t", Arr[i][j]);
}
printf("\n");
}
return 0;
}
關于C語言如何隨機生成一個矩陣就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。