卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

C語言程序產(chǎn)生不重復(fù)隨機(jī)數(shù) C語言產(chǎn)生不重復(fù)的隨機(jī)數(shù)?

C語言產(chǎn)生不重復(fù)的隨機(jī)數(shù)?c語言生成10個不重復(fù)的隨機(jī)整數(shù),并輸出?代碼如下#include<stdio。H>int main(){Int a[10],I srand((unsigned)ti

C語言產(chǎn)生不重復(fù)的隨機(jī)數(shù)?

c語言生成10個不重復(fù)的隨機(jī)整數(shù),并輸出?

代碼如下#include<stdio。H>int main(){Int a[10],I srand((unsigned)time(0))for(I=0,I<10 I){a[I]=random() 1}return 0}

保存生成的隨機(jī)數(shù),然后在獲取新的隨機(jī)數(shù)時將其與以前保存的值進(jìn)行比較,如果出現(xiàn)則丟棄,并再次獲得它,直到獲得不同的隨機(jī)值。

以獲取10個0到100之間的非重復(fù)隨機(jī)數(shù)為例,代碼如下:

#include

#include

#include

int main()

{

int list[10],I,J,a

srand(time(null))//設(shè)置隨機(jī)數(shù)種子。

For(I=0 I< 10 I)

]{

while(1)

{

a=rand() 0//獲取一個介于0和100之間的隨機(jī)數(shù)。

For(J=0 J< I J)

if(list[J]==a)break//檢查是否有重復(fù)項。

If(J==I)//無重復(fù)值,保存到列表。

{

list[i]=a

break]}]}

for(i=0 i< 10 i)//打印獲得的隨機(jī)數(shù)序列。

Printf(%D,”,list[i])

Printf(“n”)

return 0

C語言:如何產(chǎn)生不重復(fù)的隨機(jī)數(shù)字?

1 c語言生成隨機(jī)數(shù)函數(shù)。rand()的頭文件是stdlib。H

2。在[M,n]范圍內(nèi)生成隨機(jī)數(shù)的語句:rand()%(n-m1)M

3。生成不同隨機(jī)數(shù)范圍的方法:

保存獲得的隨機(jī)數(shù)。生成一個新的隨機(jī)數(shù)后,將其與獲得的隨機(jī)數(shù)進(jìn)行比較。如果存在,則丟棄它,否則保存它。

因此,我們可以得到不同隨機(jī)數(shù)的函數(shù),最小數(shù)為M,最大數(shù)為N,總數(shù)為K,可以寫成:

void get uurand(int*a,int M,int N,int K)//結(jié)果存在于a{int i,J,t for(i=0,i< K){t=Rand()%(N-m1)M for(J=0,J< i,J) if(a[J]==t)break if(J==I)//不要重復(fù)a[I]=t//記錄隨機(jī)數(shù)。}}