電子教案C 語(yǔ)言案例教程第一章11_第1頁(yè)
電子教案C 語(yǔ)言案例教程第一章11_第2頁(yè)
電子教案C 語(yǔ)言案例教程第一章11_第3頁(yè)
電子教案C 語(yǔ)言案例教程第一章11_第4頁(yè)
電子教案C 語(yǔ)言案例教程第一章11_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第五節(jié) 產(chǎn)生指定范圍的隨機(jī)數(shù)本節(jié)任務(wù) 本節(jié)的任務(wù)是學(xué)會(huì)通過(guò)程序生成某個(gè)區(qū)間的隨機(jī)整數(shù),用以解決一些簡(jiǎn)單的隨機(jī)模擬的問(wèn)題。 學(xué)習(xí)要點(diǎn) 關(guān)鍵是掌握隨機(jī)函數(shù)以及隨機(jī)函數(shù)的種子函數(shù)的使用;同時(shí),編程已經(jīng)有些時(shí)日了,也應(yīng)該懂得程序的調(diào)試,以加快學(xué)會(huì)編程的步伐。 8/2/20221C語(yǔ)言案例教程51 模擬一個(gè)區(qū)間的隨機(jī)整數(shù) 本段任務(wù) 學(xué)會(huì)使用random()函數(shù)和randomize()函數(shù)產(chǎn)生a,b間的隨機(jī)數(shù)。511 隨機(jī)函數(shù)random()和種子函數(shù)randomize()隨機(jī)函數(shù)random()和相關(guān)的種子函數(shù)randomize()。這兩個(gè)函數(shù)要用到頭文件:stdlib.h,種子函數(shù)還要用到頭文件tim

2、e.h。這兩個(gè)函數(shù)在TC中被歸類到其它函數(shù)里。隨機(jī)函數(shù)random(int n);每調(diào)用一次,產(chǎn)生一個(gè)大于等于0、小于n范圍內(nèi)的隨機(jī)整數(shù)。 8/2/20222C語(yǔ)言案例教程例1_5_1 使用隨機(jī)函數(shù)生成0,n)的整數(shù),n由鍵盤輸入。 /* 1_5L1.C */ #include #include #include main() int in; clrscr(); randomize(); printf(Input n=); scanf(%d,&in); printf(rn); printf(%4d,random(in); printf(%4d,random(in); printf(%4d,ra

3、ndom(in); printf(%4d,random(in); printf(%4d,random(in); printf(%4d,random(in); printf(%4d,random(in); printf(%4d,random(in); printf(%4dn,random(in); 8/2/20223C語(yǔ)言案例教程512 產(chǎn)生a,b區(qū)間的隨機(jī)整數(shù) 我們可以用random(b-a+1)+a生成一個(gè)大于等于a,小于等于b的隨機(jī)整數(shù)。記為a,b間的整數(shù)。它可以作為一個(gè)公式使用。 8/2/20224C語(yǔ)言案例教程例1_5_2 要求隨機(jī)產(chǎn)生10個(gè)a,b間的整數(shù)。 /* 1_5L2.C */

4、 #includestdio.h #includestdlib.h #includetime.h main() int ia,ib; randomize(); printf(INPUT a,b=); scanf(%d %d,&ia,&ib); printf(nr); printf(%4d,random(ib-ia+1)+ia); printf(%4d,random(ib-ia+1)+ia);printf(%4d,random(ib-ia+1)+ia); printf(%4d,random(ib-ia+1)+ia); printf(%4d,random(ib-ia+1)+ia); printf(

5、%4d,random(ib-ia+1)+ia);printf(%4d,random(ib-ia+1)+ia); printf(%4d,random(ib-ia+1)+ia); printf(%4d,random(ib-ia+1)+ia); printf(%4dn,random(ib-ia+1)+ia); printf(nr); 8/2/20225C語(yǔ)言案例教程52 產(chǎn)生0,1間的隨機(jī)小數(shù) 本段任務(wù) 學(xué)會(huì)使用rand()函數(shù)和randomize()函數(shù)產(chǎn)生0,1間的隨機(jī)數(shù)。由于rand()生成0,RAND_MAX間的數(shù),如將rand()/RAND_MAX,并且化成實(shí)數(shù),所得結(jié)果必然在0,1之間。

6、 8/2/20226C語(yǔ)言案例教程設(shè)在平面直角座標(biāo)系xoy的第一象限x、y軸上的0,1區(qū)間,構(gòu)成一個(gè)正方形(如右圖:第一章 圖-9),現(xiàn)在問(wèn),如果用細(xì)針向該區(qū)間投擲,針尖落在該正方形區(qū)間上的座標(biāo)可能是什么? 8/2/20227C語(yǔ)言案例教程例1_5_3 /* 1_5L3.C */ #include #include #include main() float x,y; randomize(); printf(%dn,RAND_MAX); /* 上句驗(yàn)證RANDMAX=32767 */ x=(float)rand()/RAND_MAX; y=(float)rand()/RAND_MAX; pri

7、ntf(x=%.3f y=%.3frn,x,y); 8/2/20228C語(yǔ)言案例教程將一根棍子隨意折斷,問(wèn)被折斷的兩段長(zhǎng)度,可能各是多少? 分析:設(shè)這根棍子長(zhǎng)為1個(gè)單位,可以隨機(jī)產(chǎn)生0,1區(qū)間的數(shù)x,作為斷點(diǎn)與棍子一頭的距離值,1-x就是另一頭的值。例1_5_4 /* 1_5L4.C */ #include #include #include main() float x,y; randomize(); x=(float)rand()/RAND_MAX; y=1-x; printf(x=%.3f y=%.3frn,x,y); 8/2/20229C語(yǔ)言案例教程作業(yè)與練習(xí):1、打麻將牌,要丟骰子,

8、骰子的六個(gè)面各有16的數(shù)字,問(wèn)丟一顆骰子朝上的那面的點(diǎn)數(shù)可能是多少?編程實(shí)驗(yàn)。2、在上題中,如果有兩顆骰子同時(shí)丟,問(wèn)朝上的那面的點(diǎn)數(shù)和可能是多少?編程實(shí)驗(yàn)。3、隨機(jī)產(chǎn)生4個(gè)45,50間的整數(shù),看看第幾個(gè)是45或50。4、有9個(gè)外形一樣的球,上表面分別寫著3139間的9個(gè)整數(shù)之一,現(xiàn)從中任意摸取一個(gè),編程模擬所摸得的數(shù)。5、有一種體育彩票,是由4,5,6,7,8,9這六個(gè)數(shù)字組成的、數(shù)字可重復(fù)出現(xiàn)的、共有6個(gè)數(shù)字的有序序列。編程生成這個(gè)數(shù)字序列。8/2/202210C語(yǔ)言案例教程作業(yè)與練習(xí):6、假設(shè)另一種福利彩卷是由許多這樣的球產(chǎn)生的,設(shè)這些球只有六種,每種球上的號(hào)碼分別是:14、25、36、47、58、69。由這些球隨機(jī)選出6個(gè)落入一條槽,產(chǎn)生一組有序的6個(gè)兩位數(shù)的數(shù)字序列,組成了這種福利彩卷的中獎(jiǎng)號(hào)碼。編程生成一組中獎(jiǎng)號(hào)碼。7、能否綜合random()和rand()函數(shù),隨機(jī)生成一個(gè)落在邊長(zhǎng)為5的正方形(包括邊界上)內(nèi)的可能座標(biāo)?(如圖,第一章 圖-10)8、模擬拋擲一枚硬幣,(假設(shè)正面朝上或反面

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論