最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

c語言如何設(shè)置隨機(jī)數(shù)及逐行解析

 更新時(shí)間:2022年11月11日 10:45:06   作者:菜花籽  
在C語言中,rand()函數(shù)可以用來產(chǎn)生隨機(jī)數(shù),但是這不是真真意義上的隨機(jī)數(shù),是一個(gè)偽隨機(jī)數(shù),下面這篇文章主要給大家介紹了關(guān)于c語言如何設(shè)置隨機(jī)數(shù)及逐行解析的相關(guān)資料,需要的朋友可以參考下

一.產(chǎn)生隨機(jī)數(shù)

#include<stdio.h>
#include<stdlib.h>
#include<time.h>

int main()
{
	int n = 0;
	srand((unsigned int)time(NULL));
	n = rand();
	printf("產(chǎn)生一個(gè)隨機(jī)數(shù) %d", n);
	return 0;
}

運(yùn)行結(jié)果

二.逐行解析

1.rand()函數(shù)

在我的MSDN里,rand()函數(shù)的返回值是int,頭文件是stdlib.h

這句話的意思是:rand函數(shù)返回一個(gè)偽隨機(jī)數(shù),如果超出范圍,則返回錯(cuò)誤。rand的范圍是0 到RAND_MAX(0到32767)

這里值得注意的是什么是偽隨機(jī),下面舉個(gè)例子

我們不難看出雖然打印隨機(jī)數(shù),但每次打印的隨機(jī)數(shù)都一樣,所以怎么辦呢?我們就需要一個(gè)隨機(jī)數(shù)種子strand啦

2.srand()函數(shù)

srand的返回值是void,里面?zhèn)鲄⑿枰粋€(gè)unsigned int類型的seed(種子),我們可以看出其實(shí)這就是一個(gè)設(shè)置種子的函數(shù),那么我們?cè)O(shè)置什么種子呢?

因?yàn)槲覀兿胍碾S機(jī)數(shù)時(shí)時(shí)刻刻都要改變,那么毫無疑問就時(shí)間是在無時(shí)無刻都在改變的,所以我們?cè)O(shè)置一個(gè)時(shí)間種子

3.time()函數(shù)

time函數(shù)的返回值類型是(time_t),但我們要按照srand函數(shù)的要求將其強(qiáng)制轉(zhuǎn)化為(unsigned int)。它的頭文件是time.h。它所需要的參數(shù)是一個(gè)指針,但我們并不需要給它傳參,所以我們用(NULL)

time函數(shù)返回的值是每時(shí)每秒,所以它的值是變化的
最終我們就寫出了一個(gè)時(shí)間種子srand((unsigned int)time(NULL))

三.生成有范圍的隨機(jī)數(shù)

有時(shí)候,隨機(jī)數(shù)生成的范圍太大了,我們?cè)撛趺纯s小它的范圍呢?

由此不難看出其實(shí)我們需要哪個(gè)范圍,只需要rand()%n,就可以了

原理也很簡單,一個(gè)隨機(jī)數(shù)%100那么它的值就會(huì)是0-99

總結(jié)

到此這篇關(guān)于c語言如何設(shè)置隨機(jī)數(shù)及逐行解析的文章就介紹到這了,更多相關(guān)c語言設(shè)置隨機(jī)數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • opencv幀差法找出相差大的圖像

    opencv幀差法找出相差大的圖像

    這篇文章主要為大家詳細(xì)介紹了opencv幀差法找出相差大的圖像,包含訪問mat的像素值,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • C++中各種可調(diào)用對(duì)象深入講解

    C++中各種可調(diào)用對(duì)象深入講解

    這篇文章主要給大家介紹了關(guān)于C++中各種可調(diào)用對(duì)象的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-02-02
  • c語言strftime時(shí)間格式化示例

    c語言strftime時(shí)間格式化示例

    C/C++程序中需要程序顯示當(dāng)前時(shí)間,可以使用標(biāo)準(zhǔn)函數(shù)strftime,本文提供一個(gè)示例供大家參考
    2014-02-02
  • C語言實(shí)現(xiàn)交換排序算法(冒泡,快速排序)的示例代碼

    C語言實(shí)現(xiàn)交換排序算法(冒泡,快速排序)的示例代碼

    這篇文章主要為大家詳細(xì)介紹了如何利用C語言實(shí)現(xiàn)交換排序算法(冒泡排序、快速排序),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-07-07
  • C++14 新特性之函數(shù)返回值類型推導(dǎo)

    C++14 新特性之函數(shù)返回值類型推導(dǎo)

    本文主要介紹了C++14 新特性之函數(shù)返回值類型推導(dǎo),在模板編程和一些返回類型復(fù)雜或不易直接指明的情況下非常有用,下面就來具體介紹一下,感興趣的可以了解一下
    2024-05-05
  • C++設(shè)計(jì)一個(gè)簡單內(nèi)存池的全過程

    C++設(shè)計(jì)一個(gè)簡單內(nèi)存池的全過程

    利用C/C++開發(fā)大型應(yīng)用程序中,內(nèi)存的管理與分配是一個(gè)需要認(rèn)真考慮的部分,下面這篇文章主要給大家介紹了關(guān)于C++設(shè)計(jì)一個(gè)簡單內(nèi)存池的全過程,需要的朋友可以參考下
    2021-09-09
  • C++語言pow函數(shù)的具體使用

    C++語言pow函數(shù)的具體使用

    本文主要介紹了C++語言pow函數(shù)的具體使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • C語言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例

    C語言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例

    這篇文章主要介紹了C語言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例,并且轉(zhuǎn)換后會(huì)統(tǒng)計(jì)二進(jìn)制1的個(gè)數(shù),實(shí)例簡單明了,需要的朋友可以參考下
    2014-06-06
  • OpenCV實(shí)現(xiàn)相機(jī)標(biāo)定示例詳解

    OpenCV實(shí)現(xiàn)相機(jī)標(biāo)定示例詳解

    相機(jī)標(biāo)定是圖像處理的基礎(chǔ),現(xiàn)在市面上買到的相機(jī),都存在著或多或少的畸變。本文將介紹如何利用一系列棋盤照片進(jìn)行攝像機(jī)標(biāo)定的,感興趣的小伙伴可以關(guān)注一下
    2021-11-11
  • c++ 如何在libuv中實(shí)現(xiàn)tcp服務(wù)器

    c++ 如何在libuv中實(shí)現(xiàn)tcp服務(wù)器

    這篇文章主要介紹了c++ 如何在libuv中實(shí)現(xiàn)tcp服務(wù)器,幫助大家更好的理解和使用libuv,感興趣的朋友可以了解下
    2021-02-02

最新評(píng)論

武强县| 沅陵县| 大兴区| 清镇市| 青州市| 乡城县| 瓦房店市| 通海县| 灯塔市| 凤庆县| 海阳市| 盐边县| 长寿区| 武川县| 崇礼县| 耿马| 彭水| 龙川县| 云阳县| 肇州县| 和政县| 南宁市| 尤溪县| 肇东市| 珲春市| 义马市| 新晃| 秦安县| 庆阳市| 汕头市| 玉山县| 西丰县| 富平县| 建宁县| 应城市| 襄垣县| 宁海县| 体育| 茂名市| 平山县| 钦州市|