c语言%m,C语言中rand()%m是啥意思?
rand()%m這個函數(shù)是隨機(jī)產(chǎn)生0到m-1的隨機(jī)數(shù);比如rand()%10就是隨機(jī)產(chǎn)生0到9的隨機(jī)數(shù)。
拓展資料
使用C語言的rand函數(shù),生成的是偽隨機(jī)數(shù);
c語言之rand函數(shù)的使用
1、寫入頭文件
2、變量的定義
3、srand( (unsigned)time( NULL ) ); /*選取種子文件*/
4、for( i = 0; i <20;i++ ) /*循環(huán)控制20個隨機(jī)數(shù)的生成*/
{ k=rand()%100; /*儲存隨機(jī)數(shù)*/ printf( ” k=%d\n”, k ); /*輸出隨機(jī)數(shù)*/ } }
(1)此為隨機(jī)函數(shù)的一種產(chǎn)生方法
(2)如果只需一個,那么可以省略循環(huán)控制
生成隨機(jī)數(shù)rand函數(shù)的用法:
函數(shù)rand()是真正的隨機(jī)數(shù)生成器,而srand()會設(shè)置供rand()使用的隨機(jī)數(shù)種子。如果你在第一次調(diào)用rand()之前沒有調(diào)用srand(),那么系統(tǒng)會為你自動調(diào)用srand()。而使用同種子相同的數(shù)調(diào)用 srand()會導(dǎo)致相同的隨機(jī)數(shù)序列被生成。
srand((unsigned)time(NULL))則使用系統(tǒng)定時/計數(shù)器的值做為隨機(jī)種子。每個種子對應(yīng)一組根據(jù)算法預(yù)先生成的隨機(jī)數(shù),所以,在相同的平臺環(huán)境下,不同時間產(chǎn)生的隨機(jī)數(shù)會是不同的,相應(yīng)的,若將srand(unsigned)time(NULL)改為srand(TP)(TP為任一常量),則無論何時運行、運行多少次得到的“隨機(jī)數(shù)”都會是一組固定的序列,因此srand生成的隨機(jī)數(shù)是偽隨機(jī)數(shù)。
總結(jié)
以上是生活随笔為你收集整理的c语言%m,C语言中rand()%m是啥意思?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 航班管家发布《民航运行周报5.10- 5
- 下一篇: 编程方法学18:多维数组收尾