算法初步練習(xí)題(學(xué)生講義)_第1頁
算法初步練習(xí)題(學(xué)生講義)_第2頁
算法初步練習(xí)題(學(xué)生講義)_第3頁
算法初步練習(xí)題(學(xué)生講義)_第4頁
算法初步練習(xí)題(學(xué)生講義)_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、§1 算法初步u 理解算法的含義:一般而言,對于一類問題的機(jī)械的、統(tǒng)一的求解方法稱為算法,其意義具有廣泛的含義,如:廣播操圖解是廣播操的算法,歌譜是一首歌的算法,空調(diào)說明書是空調(diào)使用的算法 (algorithm) 1. 描述算法有三種方式:自然語言,流程圖,程序設(shè)計(jì)語言(本書指偽代碼). 2. 算法的特征:有限性:算法執(zhí)行的步驟總是有限的,不能無休止的進(jìn)行下去確定性:算法的每一步操作內(nèi)容和順序必須含義確切,而且必須有輸出,輸出可以是一個(gè)或多個(gè)。沒有輸出的算法是無意義的??尚行裕核惴ǖ拿恳徊蕉急仨毷强蓤?zhí)行的,即每一步都可以通過手工或者機(jī)器在一定時(shí)間內(nèi)可以完成,在時(shí)間上有一個(gè)合理的限度3

2、. 算法含有兩大要素:操作:算術(shù)運(yùn)算,邏輯運(yùn)算,函數(shù)運(yùn)算,關(guān)系運(yùn)算等控制結(jié)構(gòu):順序結(jié)構(gòu),選擇結(jié)構(gòu),循環(huán)結(jié)構(gòu)v.流程圖:(flow chart): 是用一些規(guī)定的圖形、連線及簡單的文字說明表示算法及程序結(jié)構(gòu)的一種圖形程序,它直觀、清晰、易懂,便于檢查及修改。 注意:1. 畫流程圖的時(shí)候一定要清晰,用鉛筆和直尺畫,要養(yǎng)成有開始和結(jié)束的好習(xí)慣2. 拿不準(zhǔn)的時(shí)候可以先根據(jù)結(jié)構(gòu)特點(diǎn)畫出大致的流程,反過來再檢查,比如:遇到判斷框時(shí),往往臨界的范圍或者條件不好確定,就先給出一個(gè)臨界條件,畫好大致流程,然后檢查這個(gè)條件是否正確,再考慮是否取等號的問題,這時(shí)候也就可以有幾種書寫方法了。 N YAp Y N Np

3、A3. 在輸出結(jié)果時(shí),如果有多個(gè)輸出,一定要用流程線把所有的輸出總結(jié)到一起,一起終結(jié)到結(jié)束框。 Y N ABpABw 算法結(jié)構(gòu): 順序結(jié)構(gòu),選擇結(jié)構(gòu),循環(huán)結(jié)構(gòu) 直到型循環(huán) 當(dāng)型循環(huán).順序結(jié)構(gòu)(sequence structure ):是一種最簡單最基本的結(jié)構(gòu)它不存在條件判斷、控制轉(zhuǎn)移和重復(fù)執(zhí)行的操作,一個(gè)順序結(jié)構(gòu)的各部分是按照語句出現(xiàn)的先后順序執(zhí)行的。.選擇結(jié)構(gòu)(selection structure ):或者稱為分支結(jié)構(gòu)。其中的判斷框,書寫時(shí)主要是注意臨界條件的確定。它有一個(gè)入口,兩個(gè)出口,執(zhí)行時(shí)只能執(zhí)行一個(gè)語句,不能同時(shí)執(zhí)行,其中的A,B兩語句可以有一個(gè)為空,既不執(zhí)行任何操作,只是表明在某

4、條件成立時(shí),執(zhí)行某語句,至于不成立時(shí),不執(zhí)行該語句,也不執(zhí)行其它語句。.循環(huán)結(jié)構(gòu)(cycle structure):它用來解決現(xiàn)實(shí)生活中的重復(fù)操作問題,分直到型(until)和當(dāng)型(while)兩種結(jié)構(gòu)(見上圖)。當(dāng)事先不知道是否至少執(zhí)行一次循環(huán)體時(shí)(即不知道循環(huán)次數(shù)時(shí))用當(dāng)型循環(huán)。x 基本算法語句:本書中指的是偽代碼(pseudo code),且是使用 BASIC語言編寫的,是介于自然語言和機(jī)器語言之間的文字和符號,是表達(dá)算法的簡單而實(shí)用的好方法。偽代碼沒有統(tǒng)一的格式,只要書寫清楚,易于理解即可,但也要注意符號要相對統(tǒng)一,避免引起混淆。如:賦值語句中可以用 ,也可以用 ; 表示兩變量相乘時(shí)可

5、以用“*”,也可以用“”. 賦值語句(assignment statement):用 表示, 如: ,表示將y的值賦給x,其中x是一個(gè)變量,y是一個(gè)與x同類型的變量或者表達(dá)式.一般格式:“” ,有時(shí)在偽代碼的書寫時(shí)也可以用 “”,但此時(shí)的 “ = ”不是數(shù)學(xué)運(yùn)算中的等號,而應(yīng)理解為一個(gè)賦值號。注: 1. 賦值號左邊只能是變量,不能是常數(shù)或者表達(dá)式,右邊可以是常數(shù)或者表達(dá)式。“ = ”具有計(jì)算功能。如: 3 = a ,b + 6 = a ,都是錯(cuò)誤的,而a = 3*5 1 , a = 2a + 3 都是正確的。2.一個(gè)賦值語句一次只能給一個(gè)變量賦值。 如:a = b = c = 2 , a ,

6、b ,c =2 都是錯(cuò)誤的,而 a = 3 是正確的.例題:將x和y的值交換 , 同樣的如果交換三個(gè)變量x,y,z的值 : . 輸入語句(input statement): Read a ,b 表示輸入的數(shù)一次送給 a ,b輸出語句(out statement) :Print x ,y 表示一次輸出 運(yùn)算結(jié)果x ,y注:1.支持多個(gè)輸入和輸出,但是中間要用逗號隔開!2. Read 語句輸入的只能是變量而不是表達(dá)式 3. Print 語句不能起賦值語句,意旨不能在Print 語句中用 “ = ”4. Print語句可以輸出常量和表達(dá)式的值.5.有多個(gè)語句在一行書寫時(shí)用 “ ; ”隔開.例題:當(dāng)x

7、等于5時(shí),Print “x = ”; x 在屏幕上輸出的結(jié)果是 x = 5.條件語句(conditional statement):1. 行If語句: If A Then B 注:沒有 End If 2. 塊If語句: 注:不要忘記結(jié)束語句End If ,當(dāng)有If語句嵌套使用時(shí),有幾個(gè)If ,就必須要有幾個(gè)End If . Else If 是對上一個(gè)條件的否定,即已經(jīng)不屬于上面的條件,另外Else If 后面也要有End If 注意每個(gè)條件的臨界性,即某個(gè)值是屬于上一個(gè)條件里,還是屬于下一個(gè)條件。 為了使得書寫清晰易懂,應(yīng)縮進(jìn)書寫。格式如下:If A ThenBElseCEnd IfIf A

8、ThenBElse If C Then DEnd If.循環(huán)語句( cycle statement): u 當(dāng)事先知道循環(huán)次數(shù)時(shí)用 For 循環(huán) ,即使是 N次也是已知次數(shù)的循環(huán) v 當(dāng)循環(huán)次數(shù)不確定時(shí)用While循環(huán) w Do 循環(huán)有兩種表達(dá)形式,與循環(huán)結(jié)構(gòu)的兩種循環(huán)相對應(yīng).While A End While While循環(huán)For I From 初值 to 終值 Step 步長 End For For 循環(huán)Do Loop Until p 直到型Do循環(huán)Do While p Loop 當(dāng)型Do循環(huán)說明:1. While循環(huán)是前測試型的,即滿足什么條件才進(jìn)入循環(huán),其實(shí)質(zhì)是當(dāng)型循環(huán),一般在解決有關(guān)

9、問題時(shí),可以寫成While循環(huán),較為簡單,因?yàn)樗臈l件相對好判斷. 2. 凡是能用While循環(huán)書寫的循環(huán)都能用For 循環(huán)書寫 3. While循環(huán)和Do循環(huán)可以相互轉(zhuǎn)化 4. Do循環(huán)的兩種形式也可以相互轉(zhuǎn)化,轉(zhuǎn)化時(shí)條件要相應(yīng)變化 5. 注意臨界條件的判定.高考真題解析【例1】.(2014廣東文7、理6)圖1是某縣參加2007年高考的學(xué)生身高條形統(tǒng)計(jì)圖,從左到右的各條形圖表示學(xué)生人數(shù)依次記為A1、A2、A10(如A2表示身高(單位:cm)在150,155內(nèi)的人數(shù)。圖2是統(tǒng)計(jì)圖1中身高在一定范圍內(nèi)學(xué)生人數(shù)的一個(gè)算法流程圖。現(xiàn)要統(tǒng)計(jì)身高在160180cm(含160cm,不含180cm)的學(xué)生人

10、數(shù),那么在流程圖中的判斷框內(nèi)應(yīng)填寫的條件是 (A)i<6 (B) i<7 (C) i<8 (D) i<9【例2】. (2014寧夏 理科)如果執(zhí)行下面的程序框圖,那么輸出的 S= ()24502500 25502652【例3】.(2014山東 )閱讀下面的程序框圖,若輸入的 n 是100,則輸出的變量S和T 的值依次是( )A2550,2500B2550,2550 C2500,2500D2500,2550【解】 A依據(jù)框圖可得: 【例4】. (2014海南、寧夏文、理)右面的程序框圖,如果輸入三個(gè)實(shí)數(shù)a、b、c,要求輸出這三個(gè)數(shù)中最大的數(shù),那么在空白的判斷框中,應(yīng)該填入

11、下面四個(gè)選項(xiàng)中的( )A c > xB x > cC c > bD b > c【例5】. (2014廣東)閱讀程序框圖若輸入m4,n3,則輸出a_,i_ 【例6】. (2014山東文、理)執(zhí)行右邊的程序框圖,若p0.8,則輸出的n 算法初步測試一一、選擇題:1(2014天津文)閱讀下面的程序框圖,則輸出的A B C D2(2014福建)閱讀圖2所示的程序框圖,運(yùn)行相應(yīng)的程序,輸出的結(jié)果是A B. C. D. 開始輸出是否結(jié)束開始輸出是結(jié)束否 2題1題3(2014福建)閱讀右圖所示的程序框圖,運(yùn)行相應(yīng)的程序,輸出的結(jié)果是A B C D開始輸出是結(jié)束 開始輸出否結(jié)束是4題3

12、題4(2014浙江)某程序框圖如圖所示,該程序運(yùn)行后輸出的的值是A B C D5執(zhí)行右面的程序框圖,輸出的是 A B C D6如圖的程序框圖表示的算法的功能是 A計(jì)算小于100的奇數(shù)的連乘積 B計(jì)算從1開始的連續(xù)奇數(shù)的連乘積 C從1開始的連續(xù)奇數(shù)的連乘積,當(dāng)乘積大于100時(shí),計(jì)算奇數(shù)的個(gè)數(shù) D計(jì)算時(shí)的最小的值.開始輸出是結(jié)束否開始輸出是開始6題5題7右圖是把二進(jìn)制數(shù)化為十進(jìn)制數(shù)的一個(gè)程序框圖,判斷框內(nèi)應(yīng)填入的 條件是 A B C D開始輸出是結(jié)束否開始輸出是結(jié)束否8題7題8某程序框圖如圖所示,則該程序運(yùn)行后輸出的等于 A B CD9(2014海南)如果執(zhí)行右邊的程序框圖,輸入,那么輸出的各個(gè)數(shù)

13、的和等于 A B C D是開始輸出否結(jié)束輸入是否否 是否 開始是結(jié)束輸入否 是輸出9題10題10(2014遼寧)某店一個(gè)月的收入和支出總共記錄了個(gè)數(shù)據(jù),其中 收入記為 正數(shù),支出記為負(fù)數(shù)。該店用右邊的程序框圖計(jì)算月總收入和月 凈盈利,那么在圖中空白的判斷框和處理框中,應(yīng)分別填入下列四個(gè)選項(xiàng)中 的 A B C D11. 如圖1所示,是關(guān)于閏年的流程,則 以下年份是閏年的為 A1996年 B1998年 C2010年 D2100年1112. 某流程如右上圖所示,現(xiàn)輸入如下四個(gè)函數(shù),則可以輸出的函數(shù)是A BC D否存在零點(diǎn)?輸出函數(shù)結(jié)束是開始輸入函數(shù)是否開始輸出否結(jié)束是輸入13題12題二、填空題:13

14、(2014安徽)程序框圖(即算法流程圖)如圖所示,其輸出結(jié)果是_. 開始輸出否結(jié)束是14(2014山東)執(zhí)行右邊的程序框圖,輸出的 .14題15下面的程序框圖表示的算法的結(jié)果是 開始輸出是否結(jié)束15題16閱讀右上面的流程圖,若輸入,則輸出的結(jié)果是 是輸出開始否結(jié)束17(2014海南寧夏)右面的程序框圖,如果輸入三個(gè)實(shí)數(shù)a,b,c,要求輸出這 三個(gè)數(shù)中最大的數(shù),那么在空白的判斷框中,應(yīng)該填入下面四個(gè)選項(xiàng)中的 C開始輸入輸出否結(jié)束是否是三、解答題:輸出Sik開始是否結(jié)束輸入18已知數(shù)列an的各項(xiàng)均為正數(shù),觀察程序框圖,若時(shí),分別有(1)試求數(shù)列an的通項(xiàng);(2)令的值.19(2014江蘇)某地區(qū)為

15、了解歲的老人的日平均睡眠時(shí)間(單位:),隨機(jī)選擇了位老人進(jìn)行調(diào)查,下表是這位老人睡眠時(shí)間的頻率分布表:序號分組(睡眠時(shí)間)組中值()頻數(shù)(人數(shù))頻率()1621032041054輸出否開始是結(jié)束輸入在上述統(tǒng)計(jì)數(shù)據(jù)的分析中一部分計(jì)算見算法流程圖,20題求輸出的的值 算法初步測試二1.下列語言中,哪一個(gè)是輸入語句 ( )A.PRINT B.INPUT C.IF D.LET2.右邊程序的輸出結(jié)果為 ( )X3Y4XXYYXYPRINT X,YA 3,4 B 7,7 C 7,8 D 7,11 3. 將兩個(gè)數(shù)a=8,b=17交換,使a=17,b=8,下面語句正確一組是 ( )c=bb=aa=ca=cc=

16、bb=ab=aa=ba=bb=a A. B. C. D. 4下列給出的賦值語句中正確的是 ( )A、3=A B、M=M C、B=A=2 D、x+y=05A=15,A=-A+5,最后A的值為 ( ) A-10 B20 C15 D無意義6.下列選項(xiàng)那個(gè)是正確的( ) A、INPUT A; B B. INPUT B=3 C. PRINT y=2*x+1 D. PRINT 4*x7.下面為一個(gè)求20個(gè)數(shù)的平均數(shù)的程序,在橫線上應(yīng)填充的語句為 ( )S=0 i=1DO INPUT x S=S+x i=i+1LOOP UNTIL _a=S/20PRINT aENDA. i>20 B. i<20

17、C. i>=20D. i<=20I = 1While I<8S=2I+3 I=I+2WENDPrint S(第9題)i=11s=1DO s= s * i i = i1LOOP UNTIL “條件”PRINT sEND(第8題)8、如果右邊程序執(zhí)行后輸出的結(jié)果是990,那么在程序until后面的“條件”應(yīng)為( )A.i > 10 B. i <8 C. i <=9 D.i<99程序輸出的結(jié)果= 10讀程序甲: i=1 乙: i=1000 S=0 S=0 WHILE i<=1000 DO S=S+i S=S+i i=i+l i=i-1 WEND Loo

18、p UNTIL i<1 PRINT S PRINT SEND END對甲乙兩程序和輸出結(jié)果判斷正確的是 ( ) A程序不同結(jié)果不同 B程序不同,結(jié)果相同C程序相同結(jié)果不同 D程序相同,結(jié)果相同11下邊程序執(zhí)行后輸出的結(jié)果是 ( ) A. -1 B. 0 C. 1 D. 2x=5 y=20IF x<0 THEN x=y3ELSE y=y+3END IFPRINT xy , yxEND 第13題a=0j=1WHILE j<=5a=(a+j) mod 5j=j+1WENDPRINT a END(第12題) 12.程序運(yùn)行后的結(jié)果為_(其中:“(a+j) mod 5”表示整數(shù)(a+j)除以5的余數(shù))13.程序運(yùn)行后輸出的結(jié)果14.下面程序的作用是求的值 i=1 S=0 DO S=S+ LOOP UNTIL PRINT S END為_.15設(shè)計(jì)一個(gè)算法求:,試用程序框圖和相應(yīng)程序

溫馨提示

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

評論

0/150

提交評論