C言語におけるrandとsrandの使い方は何ですか?
C言語では、rand()関数は擬似乱数を生成するために使用され、0からRAND_MAXの間の整数を返します。RAND_MAXは定数であり、通常は32767としてstdlib.hヘッダーファイルに定義されています。
srand()関数は乱数生成器のシードを設定するために使用されます。通常、現在の時間をシードとして使用し、プログラムが実行されるたびに異なる乱数シーケンスが生成されるようにします。
rand()関数とsrand()関数の使用例は以下の通りです:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int i;
// 设置种子
srand(time(NULL));
// 生成10个随机数
for(i = 0; i < 10; i++) {
printf("%d ", rand());
}
return 0;
}
上記のコードは、srand(time(NULL))を使用して現在時刻をシードとして設定し、rand()を使用して10個のランダムな数値を生成し、それらをプリントします。異なるシードが使用されるため、プログラムを実行するたびに異なるランダムな数列が得られます。