C 语言随机函数17 Mar 2025 | 6 分钟阅读 在本主题中,我们将学习随机函数以及如何在 C 编程语言中生成随机数。正如我们所知,随机函数用于查找两个定义数字之间的随机数。在 C 编程语言中,随机函数有两个内置函数:rand() 和 srand() 函数。让我们在 C 语言中理解这些函数。 ![]() rand() 函数在C 编程语言中,rand() 函数是一个库函数,它在 [0, RAND_MAX] 范围内生成随机数。当我们在程序中使用 rand() 函数时,需要实现 stdlib.h 头文件,因为 rand() 函数定义在 stdlib 头文件中。它不包含任何种子数。因此,当我们一次又一次地执行同一个程序时,它会返回相同的值。 注意:如果未使用 srand() 函数调用而仅使用 rand() 函数生成随机数,则每次执行程序时都会返回相同的数字序列。语法rand() 函数返回范围从 0 到 RAND_MAX 的随机整数。RAND_MAX 是 stdlib.h 头文件中定义的符号常量,其值取决于 C 库,但小于 32767。 使用 rand() 函数生成随机数让我们编写一个程序来使用 rand() 函数获取随机数。 num.c 输出 The random number is: 41 The random number is: 18467 The random number is: 6334 The random number is: 26500 使用 rand() 函数生成 5 个随机数让我们考虑一个在 C 编程语言中使用 rand() 函数生成 5 个随机数的程序。 random.c 输出 Random Numbers are: 41 18467 6334 26500 19169 程序第二次执行 Random Numbers are: 41 18467 6334 26500 19169 程序第三次执行 Random Numbers are: 41 18467 6334 26500 19169 正如我们在上面的输出中看到的,它在每次执行编程代码时都返回相同的随机数序列。 使用 rand() 函数生成 1 到 100 之间的 10 个随机数让我们考虑一个使用 rand() 函数在 C 中查找随机数的程序。 rand_num.c 输出 Program to get the random number from 1 to 100 42 68 35 1 70 25 79 59 63 65 srand() 函数srand() 函数是一个 C 库函数,它确定生成不同伪随机数序列的初始点。srand() 函数必须与 rand() 函数一起使用。在调用 rand() 函数之前,需要在程序中设置一次种子值,以生成不同的随机整数结果。 语法seed:这是一个整数值,包含新伪随机数序列的种子。 使用 srand() 函数生成随机数让我们编写一个程序,使用 C 中的 srand() 函数获取随机数。 srandNum.c 输出 Enter a number to set the limit for a random number 10 44 32 23 35 6 33 1 4 22 18 程序第二次执行 Enter a number to set the limit for a random number 15 13 30 24 27 4 30 28 35 36 13 44 39 21 5 7 正如我们在上面的输出中看到的,它在每次执行编程代码时都返回不同的随机数序列。 使用 srand() 和 time() 函数生成随机数让我们编写一个程序,使用 srand() 和 time() 函数获取随机数。 srand_time.c 输出 Seed = 1619450091 Random number = 41 获取一个种子值并使用 srand() 函数打印随机数让我们编写一个程序,使用 srand() 函数获取种子值和随机数。 srand_time.c 输出 Enter the Seeding value: 10 6 4 3 3 6 3 3 1 3 4 程序第二次执行 Enter the Seeding value: 20 2 4 2 4 5 4 3 5 1 4 程序第三次执行 Enter the Seeding value: 25 1 6 1 6 4 4 1 4 1 3 正如我们在上面的输出中看到的,当我们使用不同的种子值一次又一次地执行相同的程序时,它会显示 1 到 6 之间的不同随机数序列。 使用随机函数生成随机数让我们创建一个程序,使用 stadlib 头文件在 C 中使用随机函数获取随机数。 func.c 输出 Enter a number to set the limit of random numbers 17 Enter the maximum number from you want to get the random number: 100 15 random number from 0 to 100 number are: 42 68 35 1 70 25 79 59 63 28 75 89 90 43 7 4 65 生成浮点随机数的程序让我们考虑一个在 C 中打印浮点随机数的程序。 random1.c 输出 Float random numbers are: 1.208075 1.658376 4.645070 2.298807 3.117161 0.961486 4.115573 4.336223 2.894833 2.249825 下一个主题C 语言中的 Floyd 三角 |
我们请求您订阅我们的新闻通讯以获取最新更新。