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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

c语言 rand_C语言随机数

發(fā)布時(shí)間:2024/9/19 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言 rand_C语言随机数 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1. 隨機(jī)數(shù)概述

編寫程序過(guò)程中,我們經(jīng)常需要產(chǎn)生一些隨機(jī)數(shù)。隨機(jī)數(shù)在程序中分為兩種:

1. 真隨機(jī)數(shù):完全沒(méi)有規(guī)則,無(wú)法預(yù)測(cè)接下來(lái)要產(chǎn)生的數(shù)。

2. 偽隨機(jī)數(shù):通過(guò)一些預(yù)先設(shè)定好的規(guī)則產(chǎn)生不能簡(jiǎn)單預(yù)測(cè)的數(shù)。

當(dāng)然,我們?cè)诔绦蛑惺褂玫碾S機(jī)數(shù)主要是偽隨機(jī),一般場(chǎng)景下,偽隨機(jī)數(shù)能夠滿足我們大部分的場(chǎng)景了。本篇文章給大家介紹下,如何在C語(yǔ)言中產(chǎn)生一個(gè)偽隨機(jī)數(shù)。

偽隨機(jī)數(shù)在C語(yǔ)言中產(chǎn)生分為兩個(gè)步驟:

1. 設(shè)置隨機(jī)數(shù)種子。

2. 獲得隨機(jī)數(shù)。

設(shè)置隨機(jī)數(shù)種子和獲得隨機(jī)數(shù),我們需要使用兩個(gè)函數(shù)。srand 函數(shù)rand 函數(shù)。使用這兩個(gè)函數(shù)需要導(dǎo)入頭文件:#include

2. srand 函數(shù)用法

設(shè)置隨機(jī)數(shù)種子時(shí),我們一般會(huì)用時(shí)間值作為種子。這是因?yàn)闀r(shí)間值一直都在變化。我們使用 time 函數(shù)獲得當(dāng)前時(shí)間值,使用該函數(shù)需要先導(dǎo)入頭文件 #include 。

打印出來(lái)的是一串?dāng)?shù)字,并不是我們常見(jiàn)的時(shí)間格式。Time 函數(shù)主要用于獲得從 1970 年 1 月 1日0時(shí) 0分0秒到現(xiàn)在經(jīng)歷的秒數(shù)。時(shí)間一直在變,所以該函數(shù)可作為一直在改變的隨機(jī)數(shù)種子。

所以,srand 函數(shù)的一個(gè)常用的用法就是:

srand 的要求的參數(shù)是 unsigned int,所以需要將 time 函數(shù)返回的結(jié)果強(qiáng)制轉(zhuǎn)換成 unsigned int 類型。

3. rand 函數(shù)使用

設(shè)置好隨機(jī)數(shù)種子,rand 函數(shù)就可以根據(jù)該值來(lái)產(chǎn)生隨機(jī)數(shù)了。在 windows 的 vs 2019 平臺(tái)上,默認(rèn)該函數(shù)會(huì)產(chǎn)生一個(gè) 0 到 32767 之間的隨機(jī)數(shù)。演示代碼如下:

但是實(shí)際的場(chǎng)景是,我們希望產(chǎn)生一個(gè)指定范圍內(nèi)的隨機(jī)數(shù)。此時(shí),我們可以讓隨機(jī)產(chǎn)生數(shù)進(jìn)行取余運(yùn)算符,折算成指定范圍。例如:我們要產(chǎn)生 1-100之間的隨機(jī)數(shù),可進(jìn)行如下代碼編寫:

1. rand() % 100 會(huì)產(chǎn)生一個(gè) 0-99之間的數(shù)字。

2. rand() % 100 + 1 會(huì)產(chǎn)生一個(gè) 1-100之間的數(shù)字、

4. 隨機(jī)數(shù)使用案例

我們下面做一個(gè)練習(xí),創(chuàng)建一個(gè)包含10個(gè)元素的數(shù)組,使用 for 循環(huán)產(chǎn)生 10 個(gè) 1-10之間的隨機(jī)數(shù)存儲(chǔ)到數(shù)組中,并打印輸出。

注意:隨機(jī)數(shù)種子設(shè)置一次即可。

總結(jié)

以上是生活随笔為你收集整理的c语言 rand_C语言随机数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

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