c++生成隨機數(shù) C語言:用rand函數(shù)產(chǎn)生1到10范圍內(nèi)的隨機數(shù)的問題,有點地方求教?
C語言:用rand函數(shù)產(chǎn)生1到10范圍內(nèi)的隨機數(shù)的問題,有點地方求教?2113需要準備的資料有:電腦5261,C語言編譯器。1首先,4102打開C編譯器并創(chuàng)建一個新的初始值。Cpp文件,例如:1653
C語言:用rand函數(shù)產(chǎn)生1到10范圍內(nèi)的隨機數(shù)的問題,有點地方求教?
2113需要準備的資料有:電腦5261,C語言編譯器。1首先,4102打開C編譯器并創(chuàng)建一個新的初始值。Cpp文件,例如:1653測試.cpp. 2在測試.cpp文件,輸入C語言代碼:for(int i=0 i< 10 i)printf(%d”,rand()%100 1)3,編譯器運行測試.cpp此時,通過Rand成功生成10個1-100范圍內(nèi)的整數(shù)。
c語言中如何隨機生成一個1到2千萬的數(shù)?
C語言生成隨機數(shù)函數(shù)。rand()的頭文件是stdlib。H
2。在[M,n]范圍內(nèi)生成隨機數(shù)的語句:rand()%(n-m1)M
3。生成不同隨機數(shù)范圍的方法:
保存獲得的隨機數(shù)。生成一個新的隨機數(shù)后,將其與獲得的隨機數(shù)進行比較。如果存在,則丟棄它,否則保存它。
因此,我們可以得到最小數(shù)為M,最大數(shù)為N,總數(shù)為K的不同隨機數(shù)的函數(shù),可以寫成:
void get uurand(int*a,int M,int N,int K)//結(jié)果存在于a
{
int i,J,t
for(i=0,i
{
t=Rand()%(N-m1)M
for(J)=0,J
如果(a[J]==t)中斷
如果(J==I)//不要重復(fù)
a[I]=t//記錄隨機數(shù)。
}
}
你應(yīng)該能夠閱讀和模仿。只要把m和N改成你需要的數(shù)字就行了