日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

c语言如何随机生成数字(指定范围随机数的生成)

發(fā)布時間:2023/12/29 综合教程 35 生活家
生活随笔 收集整理的這篇文章主要介紹了 c语言如何随机生成数字(指定范围随机数的生成) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

【推薦教程:C語言教程

在C語言中可以通過使用rand函數(shù)來生成隨機數(shù)。rand函數(shù)是按指定的順序來產(chǎn)生整數(shù)。但是C語言中產(chǎn)生的隨機并不是真正意義上的隨機有時候可以稱為偽隨機數(shù)。

使用 rand() 生成隨機數(shù)之前需要用隨機發(fā)生器的初始化函數(shù) srand(unsigned seed)進行偽隨機數(shù)序列初始化,seed 又叫隨機種子,意思就是如果每次提供的 seed 是一樣的,那么每一輪生成的幾個隨機值也都是一樣的,因此叫偽隨機數(shù),所以需要每次提供不同的 seed 值來達到完全的隨機.通常在C語言中我們使用時間函數(shù)time(null)來作為seed,因為時間值每秒都不同

例:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
    srand(1);
    int i;
    for (i = 0; i < 10; i++)
    printf("%d, ", rand()%11); 
}

登錄后復制

結(jié)果為:8, 9, 9, 1, 7, 5, 5, 10, 1, 0,

上述結(jié)果無論運行多少次都是這個結(jié)果,原因在于隨機種子seed為1

但是當我們把seed值換成time(null)情況就不一樣了

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
    srand(time(NULL));
    int i;
    for (i = 0; i < 10; i++)
    printf("%d, ", rand()%11); 
}

登錄后復制

結(jié)果如下:6, 3, 4, 5, 5, 9, 8, 10, 10, 4

再點擊一下:6, 4, 2, 4, 3, 2, 5, 1, 2, 9

在這里由于time(null)的作用所以seed不斷的再變化即不斷的生成了新的隨機數(shù)

相關(guān)文章推薦:javascript中如何生成隨機數(shù)

總結(jié):以上就是本篇文章的全部內(nèi)容了,希望對大家有所幫助

以上就是c語言如何隨機生成數(shù)字的詳細內(nèi)容,更多請關(guān)注風君子博客其它相關(guān)文章!

總結(jié)

以上是生活随笔為你收集整理的c语言如何随机生成数字(指定范围随机数的生成)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。