選修1算法與程序設計講課稿_第1頁
選修1算法與程序設計講課稿_第2頁
選修1算法與程序設計講課稿_第3頁
選修1算法與程序設計講課稿_第4頁
選修1算法與程序設計講課稿_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、選修2:算法與程序設計【考試內容】一、計算機解決問題的基本過程1.計算機解決問題的基本過程能用流程圖畫出利用計算機解決問題的基本步驟能例舉出適合編程解決的問題2.問題分析與算法設計理解算法的含義學會針對問題進行需求分析能根據需求分析,寫出問題的輸入、求解和輸出步驟3.算法的基本特征能說出算法的五個方面的重要特征 能舉例說明算法特征的含義4.算法的描述能用自然語言、流程圖描述算法能畫出三種程序基本結構的流程圖理解算法與程序設計關系5.程序設計語言的發(fā)展歷程了解程序設計語言產生與發(fā)展過程能例舉出三種以上高級語言的名稱了解程序的編輯與翻譯過程,了解編譯型語言與解釋型語言的區(qū)別二、程序設計基礎1.簡單

2、用戶界面的設計能在VB6.0集成開發(fā)環(huán)境中,打開程序、保存程序、編輯程序、運行程序,掌握程序調試的基本方法掌握窗體、標簽、文本框、按鈕等對象的使用能使用窗體、標簽、文本框、按鈕等對象設計具體問題的用戶界面2.常用的數(shù)據類型、變量、常量能說出程序中的常量、變量與數(shù)學中的常量、變量的異同點掌握常量、變量的定義方法能夠定義給定程序變量的數(shù)據類型,并能說出定義不同數(shù)據類型的理由3.運算符、函數(shù)、表達式知道程序中運算符、函數(shù)、表達式的表示方式能夠將數(shù)學表達式轉換為程序接受的表達式能寫出程序表達式的值4.順序結構程序設計了解VB可視化編程的一般步驟能夠完成給定程序的編輯、調試與運行能正確使用常用控件,進行

3、程序的輸入、輸出能使用賦值語句進行順序結構程序設計對給出的順序結構問題,能寫出解決問題的步驟,根據步驟用相應的語句表達,完成整個問題的程序設計嘗試尋找身邊的順序結構問題,分析問題順序結構算法,編程解決5.分支結構程序設計理解條件語句的計算機執(zhí)行方式能用恰當?shù)年P系表達式或邏輯表達式表示問題中的條件能對給出的選擇結構程序,寫出程序的運行結果能對給出的選擇結構問題,寫出解決問題的步驟,正確使用條件語句編程解決上機調試、運行選擇結構程序,能夠通過不同的輸入數(shù)據,調試程序中各條件分支的正確性,輸出正確的結果嘗試尋找身邊的選擇結構問題,分析問題的算法,編程解決6.使用循環(huán)結構設計程序的基本方法對給出的fo

4、r循環(huán)程序,寫出程序的運行結果對給出的for循環(huán)問題,能夠正確分析出問題的循環(huán)特點,設計好循環(huán)變量的初值、終值與變化方式,用for循環(huán)解決問題編寫程序解決循環(huán)嵌套不多于兩重的多重循環(huán)問題嘗試尋找身邊的循環(huán)結構問題,分析問題算法,編程解決【例題】一、計算機解決問題的基本過程1.計算機解決問題的基本過程例1在圖2-1利用計算機解決問題的基本步驟流程圖中,對于標注為(1)部分流程,以下說明正確的是( )。具體問題分析問題設計算法編寫程序調試程序問題解決(1) 圖 2-1A該部分流程可有可無B當程序運行不出結果時,才需要該部分流程C該部分流程保證了問題解決的正確性D該部分流程有錯簡析:當程序運行出結果

5、后,還需要對結果進行分析和驗證。因為如果程序有邏輯錯誤或計算方法上的錯誤,計算機是檢查不出來的,即如果分析問題錯誤導致設計的算法發(fā)生錯誤,計算機自身是檢查不出來的,只有通過分析結果,如果結果不合理,則返回到前幾步尋找錯誤進行修改,直到得到正確的結果為止。答案:C例2以下問題中,更適合于用程序設計的方式解決的是( )。A求線性方程組的解 B一組調查數(shù)據的圖表表示C編緝文稿 D家庭裝修設計簡析:軟件實質上是程序設計的產品,隨著計算機的應用普及,為方便人們使用計算機,應運而生了許多很好的軟件以解決人們常見的問題。因此一些問題能用現(xiàn)成軟件解決的,則建議使用軟件解決,而遇個體的問題,則可以通過編程解決。

6、例2中,一組調查數(shù)據的圖表表示可選擇Excel軟件處理,編緝文稿可選擇Word等文字處理軟件解決,家庭裝修設計可選擇如AutoCAD等計算機輔助設計軟件解決。答案:A2.問題分析與算法設計例1雞兔同籠問題。一個籠子里有雞和兔,現(xiàn)在只知道里面一共有35個頭,94只腳,問雞和兔各有多少只?試設計一個求解的算法,并用自然語言描述出來。設所求的雞數(shù)是x,兔數(shù)是y,已知籠子里的頭數(shù)是a,腳數(shù)是b。以下算法描述正確的是( )。A B輸入方程x+y=a輸入方程2x+4y=b求出x求出y輸出x,y輸入方程x+y=a輸入方程2x+4y=b輸入a輸入b輸出x,y輸入a和b的值求x=2a-b/2求y=b/2-a輸出

7、x,y的值C D求x=2a-b/2求y=b/2-a輸入a,b輸出x,y的值x+y=a2x+4y=b 簡析:依據題意,得到如下的方程組: 解方程組得:x=2a-b/2,y=b/2-a,算法分析的最基本過程是分析原題的已知條件,寫出輸入內容;分析從已知條件到問題解決過程的數(shù)學方法,寫出求解步驟;分析求解的目標,寫出輸出結果。答案:D3.算法的基本特征例1下列關于算法的敘述不正確的是( )。A 算法是解決問題的有序步驟B 算法有輸入、輸出、確定性、可行性、有窮性等基本特征C 解決同一個問題的算法只有一種D 描述算法的方法主要有自然語言描述法、圖示法、偽代碼法簡析:算法是解決問題的有序步驟。每一個步驟

8、都必須是確定的、可行的,且不論在任何情況下,在經過有限步驟后,算法一定能結束。即算法有確定性、可行性、有窮性等基本特征。一般的,解決同一個問題的算法可以有多種。描述算法的方法有多種,常見的有自然語言描述法、圖示法、偽代碼法。圖示法又有多種,如流程圖、NS圖等。答案為C。4.算法的描述S1S2SnS1S2CCS是否例1圖2-2從左至右分別表示程序的三種基本控制結構是( )。圖2-2A順序結構、分支結構、選擇結構 B順序結構、選擇結構、循環(huán)結構C順序結構、情況結構、選擇結構 D模塊結構、分支結構、循環(huán)結構分析:任何復雜的算法都可以用順序結構、選擇結構、循環(huán)結構三種結構組合而成的程序表示,所以順序結

9、構、選擇結構、循環(huán)結構稱為程序的三種基本控制結構。答案為B。5.程序設計語言的發(fā)展歷程例1下列關于計算機語言的敘述中錯誤的是( )。A 高級語言必須通過編譯或解釋才被計算機執(zhí)行B 機器語言程序是計算機可以直接執(zhí)行的程序C 一條匯編語言指令對應一條機器指令,故匯編語言程序在計算機中可直接執(zhí)行D 高級語言是與計算機型號無關的計算機算法語言簡析:機器語言是機器指令的集合,不同的機器有不同的機器語言,計算機只能直接執(zhí)行機器語言的程序。匯編語言是符號式的機器語言,用匯編語言編寫的程序比用機器語言寫的程序容易閱讀、調試及修改,并且需要經過轉換(稱為匯編)后形成計算機可以直接執(zhí)行的機器語言。但是計算機無法直

10、接執(zhí)行高級語言程序,必須將高級語言寫的程序翻譯成機器語言程序才能由計算機執(zhí)行。翻譯的方法有編譯和解釋兩種。編譯是將整個程序翻譯成機器語言后執(zhí)行,而解釋是翻譯一句執(zhí)行一句。答案為C。例2下列關于計算機語言的敘述中,正確的是( )。A 低級語言學習、使用都很難,運行效率又低,所以已被高級語言淘汰B 所謂“高級語言”,是因為只有專家才能使用C 程序一定要裝到主存儲器中才能運行D 匯編語言是比高級語言容易學習,容易掌握的語言簡析:一般來說,低級語言的運行效率是比較高的;而高級語言是比較容易學習的。不論是用低級語言還是高級語言編寫的程序,最終都要轉換成機器語言并裝入主存儲器中才能運行。其余請參考上題簡析

11、,答案為C。算法與程序設計同步練習(一)1例舉出你知道的可以通過程序形式更好解決問題的案例。如:網頁設計中你嘗試過更改其文本代碼而達到更加精確地設計頁面的目的嗎?2例舉出你想用程序設計的方式解決的問題。如:學科學習中的問題。31997年,IBM的“深藍”戰(zhàn)勝了人類的超一流國際象棋大師卡斯帕羅夫,說說“深藍”背后的技術。4高級語言的翻譯程序有兩種類型:編譯程序與解釋程序。說出編譯程序與解釋程序的計算機執(zhí)行過程。5例舉出三種以上你認識的高級語言。6寫出求兩數(shù)中最大數(shù)的算法,用自然語言與流程圖表示。7寫出求一元二次方程的解的算法,用自然語言與流程圖表示。8給定一個四位數(shù)的年份,判斷它是否為閏年。用自

12、然語言與流程圖表示。9寫出已知半徑求圓周長與面積的算法,用自然語言與流程圖表示。10某一時期,銀行一年期定期儲蓄年利率為2.25%,如果存款到期不取繼續(xù)留存,銀行會根據存款時約定的轉期自動將本金及80%的利息(20%利息繳納利息稅)轉存為一年期定期儲蓄。某人以一年期定期儲蓄存入銀行20萬,那么3年后,這筆款扣除利息稅后的本利和是多少?對該問題,設本金為A,銀行一年定期儲蓄年利率為R,存款時間為T,扣除利息稅后的本利和為P,寫出解決該問題的算法。用自然語言與流程圖表示。二、程序設計基礎1.簡單用戶界面的設計例1以下關于Visual Basic 6.0的集成開發(fā)環(huán)境的說法錯誤的是( )。A 屬性窗

13、口用于顯示與修改程序中對象的屬性B 工具箱窗口里包含了VB中所有的控件C 工程資源管理器窗口顯示了工程中包含的所有項目D 在集成開發(fā)環(huán)境中可以控制VB工程的運行與停止簡析:選擇“文件”菜單中的“打開工程”命令或單擊工具欄上的打開按鈕,就會彈出一個打開工程的對話框。打開了一個VB應用程序后,我們就可以運行該應用程序??梢酝ㄟ^選擇“運行”菜單中的“啟動”命令或單擊工具欄上的運行按鈕或直接按F5鍵來運行程序。運行結束后,按工具欄上的結束按鈕或運行窗口中的關閉按鈕,結束VB應用程序的運行。答案為B。例2下列關于添加“控件”的敘述正確的是( )。A 單擊工具箱中的控件圖標,將指針移到窗體上,再單擊鼠標B

14、 單擊工具箱中的控件圖標,將指針移到窗體上,再拖動鼠標C 用鼠標左鍵將工具箱中的控件拖到窗體上D 用鼠標右鍵將工具箱中的控件拖到窗體上簡析:啟動Visual Basic 6.0并在“新建工程”對話框中選擇“標準EXE”后,將會出現(xiàn)對象設計窗口,我們將要設計的窗體就在這個窗口上。首先,Windows應用程序總是運行在一個窗口中,通過窗口與用戶交互信息,因此,我們設計的應用程序必須有一個窗體。另外,其他控件必須安放在窗體上,因此,窗體是必選的對象。從工具箱選擇控件并將其加入窗體的方法一般有以下兩種:單擊所選的控件圖標,將指針移到窗體上,此時指針變?yōu)槭志€,用鼠標拖動十字線在窗體的合適位置畫出一個方

15、框,所選控件即按照方框的位置和大小出現(xiàn)在窗體中。雙擊工具箱中的控件,即在窗體中央出現(xiàn)該控件。答案為B。例3下列關于改變或刪除“控件”的敘述正確的是( )。圖2.4 窗體四周的控件柄A 控件一旦被加到窗體后就不能再改變位置和大小B 控件一旦被加到窗體后就不能被刪除C 控件被加到窗體后就可以被刪除D 控件不能用剪貼板進行復制簡析:控件四周有矩形尺寸控制柄,可利用尺寸控制柄調節(jié)控件的大小及拖動該控件到所需的位置;因此使用Windows中對一般圖形對象操作類似的方法,就可以調整這些控件的大小和位置。如果要刪除已經安放在窗體上的控件,則只要單擊選中它,按<Delete>鍵即可。而復制一個控件

16、就象復制一般的圖形對象一樣,選中以后點擊復制按鈕,然后點擊粘貼按鈕就可以了。答案為C。例4下列關于屬性設置的敘述正確的是( )。A 所有的對象都有同樣的屬性B 控件的屬性只能在設計時修改、運行時無法改變C 控件的屬性都有同樣的默認值D 引用對象屬性的格式為:對象名稱屬性名稱簡析:描述和反映對象特征的參數(shù)稱為對象的屬性。對象的屬性一般會在屬性窗口中顯示出來。在設計程序時,當我們選中某個對象后,在屬性窗口中便會顯示出該對象的各種屬性值。每個對象的屬性,凡顯示在屬性窗口中的,都有一個默認值。但是,一個控件的不同屬性的默認值一般是不同的,不同控件的同一屬性的默認值也往往是不同的。對象的屬性在程序設計中

17、是很重要的,從某種角度來講,程序運行的最終結果就是改變界面中的某些對象的屬性。對于對象的屬性,是在設計時通過屬性窗口來設置,還是在程序運行過程中來設置,要看具體情況而定。如果是反映對象的初始狀態(tài)的屬性,則在設計中解決;如果是對象某種屬性需動態(tài)變化,則只能在程序運行過程中解決。引用對象屬性的格式為:對象名稱.屬性名稱。答案為D。例5下列每個控件都有的屬性是( )。A Name B Caption C Font D Interval 簡析:對象常見的屬性有名稱(Name)、標題(Caption)、字體(Font)等屬性。不同的對象有不同的屬性,也有些屬性是每個對象都有的。如名稱(Name),它是用

18、來標識對象的,因此每個對象都有自己的唯一的名稱屬性,在編寫代碼時將通過這個名稱來指向控件實體??梢姷目丶话愣加袠祟}(Caption)和字體(Font)屬性,在程序運行時控件會按指定的字體顯示標題文字??墒嵌〞r器(Timer)控件就沒有Caption和Font屬性,因為定時器在程序運行時根本就是不可見的。Timer控件中一個重要的屬性是Interval(時間間隔)屬性,它用于設置兩次調用Timer控件的Timer事件之間間隔的毫秒數(shù),這個屬性是其它對象沒有。答案為A。2.常用的數(shù)據類型、變量、常量例1下列數(shù)據中,只能用雙精度型數(shù)來表示的是( )。A4238 B324052342223 C1.5

19、64×105 D-63789簡析:在VB中整型(Integer)數(shù)用2個字節(jié)存儲,其數(shù)值范圍為-3276832767;長整型數(shù)用4個字節(jié)存儲,它可以表示的數(shù)值范圍為-2147483648 到 2147483647;單精度型數(shù)用4個字節(jié)存儲,雙精度型數(shù)用8個字節(jié)存儲。單精度數(shù)的范圍為絕對值從 1.401298E-45到3.402823E38(即3.402823×1038),雙精度數(shù)據的范圍為絕對值從4.94065645841247E-324 到 1.79769313486232E308。所以(A)可用整型數(shù)表示。長整型數(shù)的表示范圍是:-2147483648 至 2147483

20、647 ,所以(C)和(D)可以用長整型數(shù)表示。而(B)超過了長整型的表示范圍,只能用雙精度型表示。答案為B。例2下列屬于合法變量名的是( )。A 1st B. integer C. ab c D. firstname分析:變量可看作內存中存放數(shù)據的存儲單元的名稱。程序通過變量名來引用變量的值;通過對變量的賦值來實現(xiàn)將某一類型的信息存入存儲單元。VB中變量名可以由字母、數(shù)字和下劃線等組成,但必須以字母開頭。在VB中變量名不區(qū)分字母的大小寫,如:ABC、abc、Abc等均看作同一個變量。但變量名不能與系統(tǒng)已用的其他名稱(稱為關鍵字)重名。上列選項中,“1st”不是以字母開頭;“integer”是

21、系統(tǒng)的關鍵字;“ab c”中間有空格;這些都不符合VB的變量名規(guī)定。答案為D。例3下列各組關于常量的聲明,正確的是( )。A Dim pi as 3.14159 B Const pi =3.14159 C Const pi =3.14159 as singleD Dim pi as 3.14159 as single簡析:使用變量前,一般應該先聲明變量(說明變量名稱和數(shù)據類型),其格式為:Public|Private|Dim|static 變量名As類型。常量也稱常數(shù),是有意義的名字。盡管常量在形式上有點象變量,但不能象對變量那樣隨意修改常量的值。VB的常量有兩大類:內部常量和自定義常量。其中

22、內部常量是由系統(tǒng)預先定義好的可以直接引用的;而自定義常量的聲明語法是:Public|Private Const 常量名As 類型 =表達式。常量名的命名規(guī)則與變量一樣,表達式由數(shù)值常數(shù)或字符串常數(shù)以及運算符組成。答案為B。3.運算符、函數(shù)、表達式例1下列不合法的表達式是( )。A123abc B. 123 & abcC. 1+2>3 D. ? +3*(4+5)-6/7簡析:用運算符將變量、常量和函數(shù)等連接起來組成的式子稱為表達式。VB等高級語言中的算術表達式類似于數(shù)學中的表達式。但在高級語言中除了算術表達式外還有字符串表達式、邏輯表達式和關系表達式。算術表達式與數(shù)學上類似,只是在

23、高級語言中的表達式中不能用中括號和大括號,而一律都用小括號。關系表達式和邏輯表達式在分支和循環(huán)語句中用作條件判斷,以便控制程序的流向。由于VB中有各種不同的數(shù)據類型,因此還要考慮表達式中數(shù)據類型的匹配。上列選項中,(A)中兩個參與運算的數(shù)據一個是整數(shù)、一個是字符串,類型不匹配;(B)中雖然兩個參與運算的數(shù)據一個是整數(shù)、一個是字符串,但是運算符具有自動將非字符串數(shù)據轉換為字符串的功能;(C)中雖然會出現(xiàn)3>3的判斷,但是它作為關系表達式是合法的,它的值是false(假);(D)中出現(xiàn)了方括號,但是它是作為字符串的內容;而不是作為改變運算順序的運算符,所以是允許的。答案為A。例2將表達式轉換

24、成程序能接受的表達式,以下轉換正確的是( )。A(a+b)2/ab B(a+b)2/(ab) C(a+b)*(a+b)/(ab) D(a+b)*(a+b)/(a*b)簡析:將數(shù)學表達式轉換成程序能接受的表達式,需注意需將式子寫在一行;注意運算的先后順序而適當加括號;不能省略任何運算符。答案:D4.順序結構程序設計例1以下程序段執(zhí)行后,整型變量a,b的值分別為( )。a=15b=20a=a+bb=a-ba=a-bAa=20,b=15Ba=35,b=35Ca=5,b=5Da=-5,b=-5簡析:順序結構程序的執(zhí)行順序是從上到下、從左到右地依次執(zhí)行。本題還考查賦值語句的執(zhí)行過程。第三個語句的作用是求

25、原來a,b值的和,并將結果存入a;第四個語句執(zhí)行后,使b的值為原來a的值;同理第五個語句使得a的值為原來b的值。這是一種典型的兩個變量值進行交換的算法。答案為A。例2編一個程序,從文本框text1輸入一個攝氏溫度c,將其轉換成華氏溫度f,并在Label2中輸出。(f=c*9/5+32)。程序界面如圖2-4。圖2-4對象屬性如下:對象屬性值對象屬性值Label1Caption請輸入一個攝氏溫度Text1TextCommand1Caption華氏溫度=Label2CaptionBorderstyle1-fixed singleBackcolor白色請編寫命令按鈕command1的click事件過程

26、,使得運行時用戶單擊該按鈕,程序則將text1框中輸入的攝氏溫度轉換成華氏溫度。簡析:該題為機試題,考查考生的界面設計能力和簡單順序結構的程序設計能力。程序算法為:將text1框中的text屬性值轉換成一個單精度數(shù)存入C變量;根據公式求出華氏溫度f;在Label2中輸出f的值。程序代碼為:Private Sub Command1_Click()Dim c, f As Singlec = Val(Text1.Text)f = c * 9 / 5 + 32Label2.Caption = f圖2-5End Sub例3下面是一個程序將一個時間(以秒為單位),轉換成*小時*分*秒形式,界面如圖2-5所

27、示。當用戶在“請輸入一個時間(秒):”下面的文本框中輸入一個時間,然后單擊“確定”按鈕,則在“結果(時分秒):”下面的文本框輸出結果。以下是該程序的主要事件過程,請完善以下程序,使得該程序能完成題目的要求。Private Sub CmdExit_Click() EndEnd SubPrivate Sub CmdSure_Click() 單擊確定按鈕的響應過程Dim t As LongDim h, m, s As Integert = Val(TxtIn.Text)h = t 3600m = _(1)_ '請完善該行代碼s = (t Mod 60)TxtResult.text = _(2

28、)_ '請完善該行代碼End Sub簡析:該題為機試題,給定程序的界面和不完整的過程代碼,要求學生完善程序。從以上程序可以猜測變量t用于存放輸入的時間(以秒為單位)、h表示小時、m表示分鐘、s表示秒鐘。因此(1)處應該是求出分鐘,可以填寫(t-h*3600)60或(t mod 3600)60。同樣我們可以推斷(2)處的語句是用于輸出結果,根據題目中關于程序的運行界面,可以知道(2)處應填:h & "小時" & m & "分" & s & "秒"5.分支結構程序設計例1下列邏輯表達式中,能

29、正確表示條件“x、y、z全是偶數(shù)”的是( )。A(x+y+z) mod 2=0Bx mod 2=0 or y mod 2=0 or z mod 2=0Cx mod 2=0 and y mod 2=0 and z mod 2=0D(x+y+z) mod 2=1簡析:“x、y、z全是偶數(shù)”即x是偶數(shù),且y也是偶數(shù),且z也是偶數(shù)。答案是C。例2假設變量a、b、t均為整型變量,執(zhí)行以下程序段后,a、b的值分別為( )。a=2b=3if a<b then t=a a=b b=tendifAa=2,b=3 Ba=3,b=2Ca=2,b=2Da=3,b=3簡析:執(zhí)行前兩個語句后,變量a和b的值分別為2

30、,3。再執(zhí)行if語句,此時條件a<b成立,執(zhí)行then后面的語句塊,該語句塊的作用是將a,b變量值交換。故答案是B。例3假設x、y均為整型變量,則執(zhí)行下列程序段后,y的值為:x=130 if x>50 then y=x*2 else y=x*3A語法有錯 B150 C260 D390簡析:該題主要考查對IF語句的格式與功能的了解。IF語句的格式為:If <條件>Then <語句1> Else <語句2>,因此語法并沒有錯。執(zhí)行該語句時,計算機先要計算<條件>的值,若為True,則執(zhí)行Then后面語句,否則執(zhí)行Else后面語句。顯然,該

31、程序段中的第一個語句執(zhí)行后,x的值為130,因此條件“x>50”為True,故執(zhí)行y=x*2,y的值為260。故答案是C。例4設計一個求三角形面積的程序。程序要求輸入三個正整數(shù)a、b、c,判斷它們能否構成三角形的三邊,如果能構成一個三角形,則輸出:“該三角形的面積為: ”,否則輸出:“不能構成三角形”。界面如圖2-6。圖2-6設置對象的屬性對象屬性值對象屬性值Form1Caption求三角形面積Label1Caption請輸入三角形的三邊長Text1,Text2,Text3Text空Label2Caption空Command1Caption判斷和計算添加事件過程Command1的Clic

32、k事件過程如下:Private Sub Command1_Click() Dim a As Single, b As Single, c As Single, p As Single, s As Single a = Val(Text1.Text) b = Val(Text2.Text) c = Val(Text3.Text) p = (a + b + c) / 2 If a + b > c And b + c > a And c + a > b Then s = Sqr(p * (p - a) * (p - b) * (p - c) Label2.Caption = &qu

33、ot;該三角形的面積為:" & s Else Label2.Caption = "不能構成三角形" End IfEnd Sub將該工程保存為p1.vbp,窗體文件保存為f1.frm,并運行該程序。簡析:該題型主要出現(xiàn)在上機考試中??疾榭忌欠衲苷_地進行可視化界面的設,正確添加適當?shù)目丶?,并設置某些屬性值,正確地添加事件代碼,并保存、運行工程。6.循環(huán)結構程序設計例1fornext語句的格式如下,下列關于該語句的說法正確的是( )。For 循環(huán)變量=<初值>To <終值>Step <步長> 語句塊Next 循環(huán)變量A循環(huán)

34、變量、初值、終值和步長都必須為數(shù)值型Bstep后的步長只為正數(shù)C初值必須小于終值D初值必須大于終值簡析:這是一道考查fornext語句格式的題目。Step后的步長可正可負;初值不必小于或大于終值。答案為A。例2下列程序段執(zhí)行后,整型變量n的值為( )。n=0for I=1 to 100 if I mod 3=0 then n=n+1next IA5050 B2525 C34 D33簡析:該程序段實際上是統(tǒng)計1到100之間能被3整除的整數(shù)個數(shù)。答案是D。例3以下各程序段,能正確地求出s=0.5+1+1.5+5的值是( )。Bs=0a=0.5for I=0.5 to 5 s=s+a a=a+0.5

35、next IA s=0for I=1 to 10 s=s+0.5next ID s=0for I=1 to 11 s=s+I*0.5next IC s=0for I=0.5 to 5 step 0.5 s=s+Inext I簡析:A程序段中每次循環(huán)累加一個0.5,所以求的是10個0.5的和;B程序段每次累加一個a,a的值從0.5開始,每次增加0.5,但最后S的值為0.511.523.5;C程序段每次累加一個I,而I的值從0.5開始,每循環(huán)一次自動增加0.5,直到5;D程序段執(zhí)行后S的值為0.5+1+5+5.5。故答案是C。算法與程序設計同步練習(二)一、單項選擇題(共12題)1下列各組控件中,

36、都具有Caption屬性的是(C )。A窗體、文本框 B文本框、按鈕、標簽C窗體、標簽 D文本框、按鈕2下列各組控件中,都具有相同默認事件的是(B )。A窗體、文本框 B標簽、按鈕C窗體、標簽 D文本框、按鈕3用一個變量來存放“身高”數(shù)據,單位為“米”,應將該變量聲明為(B)類型。A. Integer B. Single C. Boolean D. String4用邏輯表達式表示“x小于15且x大于10”,正確的是(D)。A. 10<x<15 B. x<10 and x>15C. (x>10) or (x<15) D.(x>10) and (x<

37、15)5下列邏輯表達式中,能正確表示條件“x、y都是奇數(shù)”的是( C )Ax mod 2=1 or y mod 2=1 B. x mod 2=0 or y mod 2=0C. x mod 2=1 and y mod 2=1 D. x mod 2=0 and y mod 2=06代數(shù)式對應的VB表達式是(B)。A. a/b+c/d B. a/(b+c/d) C. (a/b+c)/d D.(a/b+c/d) 7要使得用戶每單擊一次窗體FrmMain,窗體都向上移動50個像素,應該將代碼“FrmMain.top=FrmMain.top-50” 添加在( C)事件過程中。AForm_LOAD()B.F

38、orm_Click() C. FrmMain_Click() D.FrmMain_Load()8設置命令按鈕的標題文字時,應改變的屬性是(C)。A.textB. NameC.CaptionD.(名稱)9若要設置文本框中所顯示文本的顏色,使用的屬性是(C)。A. BackColorB. FillColor C. ForeColor D.BackStyle10下列各賦值語句,不正確的是( A )。A. x+y=5B. iNumber=15C. Label1.caption=timeD. sLength=x+y11已知變量a、b、c都是單精度型,執(zhí)行下面程序后c的值為(B)。if c > a

39、then c = aif c > b then c = bA. 最大值 B. 最小值 C. 中間值 D. 平均值12雙擊窗體中的對象后,Visual Basic將顯示的窗口是( C )。A. 項目(工程)窗口 B. 工具箱C. 代碼窗口 D. 屬性窗口二、工程界面設計1用文本框、標簽、按鈕控制設計一個解決求兩數(shù)中最大數(shù)問題的合理界面。思考算法中涉及變量的類型。2用文本框、標簽、按鈕控件設計一個解決求一元二次方程的解的問題合理界面。思考算法中涉及變量的類型。3用文本框、標簽、按鈕控件設計一個解決給定一個四位數(shù)的年份,判斷它是否為閏年問題的合理界面。思考算法中涉及變量的類型。4用文本框、標簽

40、、按鈕控件設計一個解決已知半徑求圓周長與面積問題的合理界面。思考算法中涉及變量的類型。5用文本框、標簽、按鈕控件設計一個解決同步訓練2.1第10題的合理界面。思考算法中涉及變量的類型。三、閱讀程序.選擇輸出結果1若x,y,z均為整型變量,執(zhí)行下列程序段后,x,y,z的值分別為(B)。x = 3: y = 5: z = 6 x = x 3: y = y + x: z = z + x y = y 3: x = x + y: z = z + y z = z 3: y = y + z: x = x + z A 3,5,6B. 6,5,3C. 5,5,5D. 6,6,62. 以下程序段執(zhí)行后,整形變量n

41、的值為(D)。year=2001n=year4+year400-year100A. 495 B. 505 C. 500 D.485 3. 若變量a,b,c,max均為實型,運行下列程序段后輸出結果為鍵盤輸入的三個數(shù)中的(A)。'變量a,b,c接收用戶輸入的三個值if a<b then max=belse max=aend ifif max<c then max=cform1.print max A. 最大值B. 最小值C. 平均值D.總和4. 如果變量a,b,c均為整型,下列程序段的輸出結果為(C)a=5b=3c=abPrint a & ” & b &

42、; ”=” & cA. c=15B. 53=15C. 53=125D. ab=1255. 若i,k均為整型變量,下列程序段的輸出結果為(A)k=lFor i=1 To 5step 2 k= k * iNext IA. k=15B. k=5OC. k=120D. k=326. 有如下程序a=0For j=1 To 20a=a+j7Next jPrint a在運行后輸出a的值是( A )。A. 21 B. 41 C. 63 D. 2107. 若i,n均為整型變量,執(zhí)行下列程序段后變量n的值為(A)。n=0 t= -1for i=1 To 10 step 2t= - tn=n+I*t nex

43、t iA. n=l-3+5-7+9B. n=1+3+5+7+9C. n=-1+3-5+7-9D. n=1-2+3-+9-108若i,n,a,s均為整型變量,運行下列程序段后, a的值為( D )。n=3 :a=3:s=0for I=1 to n s=s+aa=a*10+nnext I A a=3B. a=33C. a=333D. a=3333四、完善程序1. 百元買百雞。這是我國古代一道有名的數(shù)學難題,要求用100元買100只雞,其中公雞五元一只,母雞三元一只,小雞三只一元,每種至少買一只,求購買方案,程序中以X代表公雞,Y代表母雞,Z代表小雞。請在 填入正確內容。 Private Sub F

44、orm_Click()Dim x%, y%, z%For x = 1 To 20 For y = 1 To 33 z = If = 100 Then Form1.Print x,y,z Next yNext xEnd sub2. 下面是一個打印九九乘法表的程序,請在程序中的 處填上適當?shù)膬热?,使其完整正確。Private Sub Form_Click()Dim i%, j%For i = 1 To 9 For j = 1 To i Form1.Print i; "*" j; "=" ; j Form1.PrintNext iEnd Sub3. 設計一個程

45、序,輸入2007年的某月份,求該月有多少天,并輸出。Private Sub command1_Click()Dim month as integer; Month=val(text1.text) If month=2 then _ else if _ then text2.text=30 else text2.text=31 endif endifend sub算法與程序設計模擬試卷(一)一、單項選擇題(共10小題,每小題1分)1以下關于Visual Basic 集成開發(fā)環(huán)境的說法錯誤的是( C )。A集成開發(fā)環(huán)境的布局是可以由使用者自行安排的B窗體是對VB程序進行可視化界面設計的窗口C每個V

46、B應用程序都只能有一個窗體DVB應用程序窗體的大小是可以改變的2下列關于保存Visual Basic應用程序有關文件的方法與步驟的敘述正確的是( C )。A只須保存工程文件,不須保存窗體文件B只須保存窗體文件,不須保存工程文件C窗體文件和工程文件都要保存D窗體文件和工程文件必須同名Private Sub Form_Click() Dim a As Integer Dim b As Integer a = 5 b = 6 b = b + a a = a + b Print a, bEnd Sub3以下程序運行后的結果為( A )。A11、11 B11、16 C16、11 D6、 54求出100以

47、內能被3整除的所有正整數(shù)。其正確的算法描述是( B )。A令I=1;如果I能被3整除,則輸出II=I+1;如果I100,則返回步;結束。B令I=1;如果I能被3整除,則輸出II=I+1;如果I100,則返回步;結束。D令I=1;如果I能被3整除,則輸出I如果I100,則返回步;I=I+1; 結束。C令I=1;如果I能被3整除,則轉步I=I+1;輸出I如果I100,則返回步;結束。 5下列四項中,不可作為程序中變量名的是( B )。AA1 BDIM CA_1 DNAMEONE6寫出一個數(shù)X滿足既不能被3整除,又不能被5和7整除的正確條件式是( A )。AX MOD 3<>0 AND

48、X MOD 5<>0 AND X MOD 7<>0BX MOD 3<>0 OR X MOD 5<>0 OR X MOD 7<>0CX MOD 3=0 AND X MOD 5=0 AND X MOD 7=0DX MOD 3<>0 OR X MOD 5<>0 AND X MOD 7<>07.將變量A與B內容進行交換,正確的語句表達方法是( B )。CT=AB=AA=TBT=AA=BB=TAA=BB=A?A,BDA=BT=AB=TPrivate Sub Command1_Click( ) For A=10

49、0 To 1 Step 1S=S+A Next A Print “S=”;SEnd Sub8運行程序如下程序,其正確結果是( D )。A100 B1 C5049 D50509下列數(shù)據屬于字符串常量的是( B )。Abcda Bbcda Cbada Dj-90810下列中不是計算機高級語言的是( )。ACOBOL BFORTRAN CPASCAL D.LIST二、上機操作題(共3小題,共40分)1將下列窗體及其窗體中的控件對象設計成適合于求圓面積的程序界面。要求如下。(本題滿分15分) Form1對象:標題內容為“求圓的面積”,窗體背景色設置為黃色(RGB值為&H0000FFFF&

50、;)。 Label1對象:標簽內容為“輸入圓半徑”,字體設置為“宋體”“小四”,標簽長與寬設置為“300”與“1300”。 Label2對象:標簽內容為“輸出圓面積”,字體設置為“宋體”“小四”,標簽長與寬設置為“300”與“1300”。 Text1對象:文本內容初值設置空,長與寬設置為“450”與“1200”。 Text2對象:文本內容初值設置空,長與寬設置為“450”與“1200”。 Command1對象:按鈕顏色設置為粉紅色(RGB值為&H008080FF&),按鈕內容為“計算” ,字體設置為“宋體”“小四”。2通過輸入對話框,輸入10個30000以內的整數(shù),輸出數(shù)中的最大數(shù),完善下列程序,使其得到正確結果。(本題滿分10分)Private Sub Form_Click()Dim x As IntegerDim max As IntegerDim i As Integer max = InputBox("請輸入數(shù)據", "輸入10個數(shù)")For i = 1 To 9 x = InputBox("請

溫馨提示

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

最新文檔

評論

0/150

提交評論