




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
循環(huán)結(jié)構(gòu)應(yīng)用【例1】用π4≈1-13+15-17+?公式求π的近似值,程序分析:多項式的各項的規(guī)律:①每項的分子都是1。②后一項的分母是前一項的分母加2。③第一項的符號為正,從第二項起,每一項的符號與前一項的符號相反。找到這些規(guī)律后,就可以用循環(huán)來處理了。例如,前一項的值是1n,則可以推出下一項為-可以看出,4分之π的值是由求一個多項式的值來得到的。這個多項式從理論上說包含無窮項,包含的項數(shù)越多,近似程度就越高。但是在實(shí)際運(yùn)算時不可能計算到無窮項,現(xiàn)在題目已明確,當(dāng)多項式中的某一項的絕對值小于10的-6次方時,就認(rèn)為足夠近似了,可以據(jù)此計算出π的近似值了。程序如下:#include<stdio.h>#include<math.h> //程序中用到數(shù)學(xué)函數(shù)fabs,應(yīng)包含頭文件math.hmain(){intsign=1; //sign用來表示數(shù)值的符號doublepi=0.0,n=1.0,term=1.0; //pi開始表示多項式的值,最后代表π的值,//n代表分母,term代表當(dāng)前項的值while(fabs(term)>=1e-6) //檢查當(dāng)前項term的絕對值是否>或=10的-6次方{pi=pi+term; //把當(dāng)前項term累加到pi中n=n+2; //n+2是下一項的分母sign=-sign; //sign代表符號,后一項的符號與前一項符號相反term=sign/n; //求出下一項的值term}pi=pi*4; //多項式的和pi×4,才是π的近似值printf(“pi=%10.8f\n”,pi); //輸出π的近似值}運(yùn)行結(jié)果:雖然輸出了8位小數(shù),但是只有前5位小數(shù)3.14159是準(zhǔn)確的,因?yàn)榈?位已小于10的-6次方,后面的項沒有累加?!纠?】計算用戶多次輸入的若干個數(shù)的平均值,去掉一個最大數(shù)和一個最小數(shù)后再求平均值。程序分析:要讓用戶反復(fù)執(zhí)行輸入操作時,可以利用scanf函數(shù)進(jìn)行判斷,如果用戶沒有按照scanf規(guī)定的輸入模式輸入數(shù)據(jù),例如要求輸入數(shù)字,結(jié)果輸入的是字符,則該函數(shù)將會返回數(shù)字0,表示失敗。如果格式正確,輸入成功,該函數(shù)將返回數(shù)字1。因此在編寫循環(huán)時,用返回值m!=0,即輸入成功作為循環(huán)條件來進(jìn)行判斷。程序如下:main(){doublesum=0,aver=1; //sum、aver分別用來存放數(shù)的和、平均值doublex=0,max,min; //x,max,min分別用來存放輸入的數(shù)、最大值、最小值intcount=0; //count表示輸入數(shù)字的個數(shù)intm=1; //m表示輸入成功與否的標(biāo)志printf(“輸入數(shù)字,回車確認(rèn)(輸入no結(jié)束輸入過程):\n”);m=scanf(“%lf”,&x); //輸入數(shù)字送到x中,輸入成功m=1,否則m=0max=min=x;while(m!=0) //當(dāng)輸入成功時,執(zhí)行循環(huán)體{count++; //輸入數(shù)的個數(shù)加1sum=sum+x; //輸入的數(shù)累加求和printf(“輸入下一個數(shù)據(jù),回車確認(rèn)(輸入no結(jié)束輸入過程):\n”);m=scanf(“%lf”,&x);if(x>max)max=x;if(x<min)min=x;}aver=sum/count; //求平均值printf(“所有輸入數(shù)的平均值是:%f\n”,aver);if(count>=3) //如果輸入數(shù)的個數(shù)大于等于3個{printf(“去掉一個最大數(shù)%f、一個最小數(shù)%f\n”,max,min);aver=(sum-max-min)/(count-2); //求平均值printf(“平均值是:%f\n”,aver);}}運(yùn)行結(jié)果:【例3】程序隨機(jī)給出一個1~100之間的數(shù),讓用戶猜這個數(shù)。程序分析:當(dāng)用戶給出的猜測不等于程序給出的數(shù)時,程序會提示用戶“猜大了”,或“猜小了”,并要求用戶繼續(xù)猜測;只有猜當(dāng)用戶的猜測等于程序給出的數(shù)時,程序提示用戶“猜對了”,并不再要求用戶繼續(xù)猜測。其次,怎樣獲得一個隨機(jī)數(shù)呢?首先要確定隨機(jī)數(shù)種子,然后才能模擬得到一個隨機(jī)數(shù)。在C語言里可以使用srand()函數(shù)(在stdlib.h庫中),并將當(dāng)前機(jī)器的時間設(shè)置為隨機(jī)數(shù)種子(time函數(shù)在time.h庫中):srand(time(NULL));然后調(diào)用rand()函數(shù)(在stdlib.h庫中)得到一個大于0的隨機(jī)數(shù),例如,為了得到1~100之間的隨機(jī)數(shù)number,可以進(jìn)行如下操作:number=rand()%100+1;程序如下:#include<stdio.h>#include<time.h> //程序中用到time函數(shù)#include<stdlib.h> //程序中用到srand函數(shù)和rand函數(shù)main(){intnumber,guess; //number,guess分別表示隨機(jī)數(shù)、用戶猜測數(shù)intcount=0; //記錄用戶猜測的次數(shù)srand(time(NULL)); //用當(dāng)前時間做隨機(jī)數(shù)種子printf(“給你一個1~100之間的數(shù)字,請猜測:\n”);number=rand()%100+1; //得到1~100之間的隨機(jī)數(shù)do{scanf(“%d”,&guess);count++; //輸入次數(shù)加1if(guess>number) //如果輸入的數(shù)大于隨機(jī)數(shù)printf(“第%d次猜測,猜大了,請再猜:\n”,count);elseif(guess<number) //如果
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版家庭關(guān)系重構(gòu)離婚協(xié)議
- 2025版藥品研發(fā)項目臨床試驗(yàn)受試者招募服務(wù)合同
- 2025房地產(chǎn)銷售市場調(diào)研與分析內(nèi)部承包協(xié)議
- 2025年房屋租賃安全協(xié)議及租賃期滿資產(chǎn)返還合同范本
- 2025版房地產(chǎn)開發(fā)項目借款保證擔(dān)保合同
- 二零二五年專業(yè)對講機(jī)租賃及維修服務(wù)合同
- 二零二五年度學(xué)校消防改造與教學(xué)樓裝修服務(wù)合同
- 二零二五年度教育培訓(xùn)會議組織服務(wù)協(xié)議
- 2025版健身中心店鋪轉(zhuǎn)讓合同范本:含會員卡轉(zhuǎn)讓及設(shè)備維護(hù)協(xié)議
- 二零二五年度建筑垃圾運(yùn)輸與環(huán)保技術(shù)研發(fā)合作協(xié)議
- 2025至2030中國纖維素納米纖維(CNF)行業(yè)項目調(diào)研及市場前景預(yù)測評估報告
- (高清版)T∕CES 243-2023 《構(gòu)網(wǎng)型儲能系統(tǒng)并網(wǎng)技術(shù)規(guī)范》
- 2025即時零售行業(yè)規(guī)模消費(fèi)場景及頭部平臺美團(tuán)京東淘寶對比分析報告
- 閥門維修協(xié)議書范本
- 常用干燥器簡介二李瑛化工傳熱設(shè)備與操作00課件
- 2025年市政考試網(wǎng)絡(luò)資源試題及答案
- 高邊坡施工信息化管理措施
- 食品召回管理辦法2025培訓(xùn)
- 護(hù)林員考試試題及答案
- 2025至2030中國食鹽行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢及投資規(guī)劃深度研究報告
- 軸承游隙知識培訓(xùn)
評論
0/150
提交評論