Japanese: C言語での乱数の生成方法は何ですか?
C言語では、ランダムな数値を生成するためにrand()関数を使用することができます。ただし、この関数を使用する前に、ランダム数発生器の種を設定するためにsrand()関数を呼び出す必要があります。
以下是一个简单的示例代码,展示如何生成一个在0到9之间范围内的随机数:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
// 设置随机数生成器的种子为当前时间
srand(time(NULL));
// 生成随机数
int randomNumber = rand() % 10;
printf("随机数:%d\n", randomNumber);
return 0;
}
上記のコードでは、srand(time(NULL))関数が現在の時間をシードとして使用し、それからrand()関数を呼び出してランダムな数値を生成します。rand()関数は比較的大きなランダムな整数を生成するため、剰余演算子(%)を使って0から9の範囲に縮小します。最後に、printf()関数を使用して生成されたランダムな数値を表示します。
プログラムを実行するたびに生成されるランダムな数列は、システムの時間に基づいて種を設定するため、異なります。毎回同じランダムな数列が生成されるようにしたい場合は、固定の種を手動で指定することができます。例えば、srand()関数の引数を定数に設定することで、srand(123)と指定できます。