2020年信息技術(shù)學(xué)考算法與程序設(shè)計試題整理及解析_第1頁
2020年信息技術(shù)學(xué)考算法與程序設(shè)計試題整理及解析_第2頁
2020年信息技術(shù)學(xué)考算法與程序設(shè)計試題整理及解析_第3頁
2020年信息技術(shù)學(xué)考算法與程序設(shè)計試題整理及解析_第4頁
2020年信息技術(shù)學(xué)考算法與程序設(shè)計試題整理及解析_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上2020年信息技術(shù)學(xué)考算法與程序設(shè)計試題整理及解析一、選擇題(每題3分)1.下列選項中,不屬于計算機程序設(shè)計語言的是( C )A.匯編語言 B.高級語言 C.自然語言 D.機器語言解析:計算機程序設(shè)計語言的種類非常的多,總的來說可以分成機器語言,匯編語言,高級語言三大類。2. 關(guān)于算法的描述,下列選項中正確的是( B )A.算法本身就是一種程序設(shè)計語言B.算法的每一步驟必須有確切的含義C.算法的步驟可以是無窮的D.算法必須有輸入解析:算法是指解決問題的方法和步驟,一個算法應(yīng)該具有以下五個重要的特征:1.有窮性(Finiteness):是指算法必須能在執(zhí)行有限個步驟之后

2、終止。2.確切性(Definiteness):算法的每一步驟必須有確切的定義。3.輸入項(Input):一個算法有0個或多個輸入,以刻畫運算對象的初始情況,所謂0個輸入是指算法本身定出了初始條件。4.輸出項(Output):一個算法有一個或多個輸出,以反映對輸入數(shù)據(jù)加工后的結(jié)果。沒有輸出的算法是毫無意義的。5.可行性(Effectiveness):算法中執(zhí)行的任何計算步驟都是可以被分解為基本的可執(zhí)行的操作步驟,即每個計算步驟都可以在有限時間內(nèi)完成(也稱之為有效性)。3. VB程序中“dim n As Integer”這條語句的作用是( A )A.定義一個變量 B.定義一個數(shù)據(jù)輸入方法C.定義一

3、個事件過程 D.定義一個數(shù)據(jù)處理方法解析:Dim 是VB中聲明變量并分配存儲空間的語句。格式:Dim 變量名 as 數(shù)據(jù)類型Integer:變量存儲為 16位(2 個字節(jié))的數(shù)值形式。string:變長與定長的字符串。Boolean:存儲為 16 位(2 個字節(jié))的數(shù)值形式,但只能是 True 或是 False。Double:(雙精度浮點型)變量存儲為 IEEE 64 位(8 個字節(jié))浮點數(shù)值的形式。Long:(長整型)變量存儲為 32 位(4 個字節(jié))有符號的數(shù)值形式等等。本題中:Dim N 注冊一個名為N的變量。此變量的“壽命”只在定義該變量的過程中。As Integer 表示N是整型變量

4、。范圍 -3276832767,超出范圍就提示“溢出”4.一個單窗體VB程序的運行界面如下圖所示,下列說法正確的是:( C )(1)窗體內(nèi)有1個按紐 (2)窗體內(nèi)有2個文本框 (3)窗體內(nèi)有3個標(biāo)簽 (4)該窗體的標(biāo)題(Caption)屬性值是“加法計算器”A.(3) (4) B.(1)(2) C.(1)(4) D.(2) (3)解析:5.兩個阻值分別為R1 、R2的電阻并聯(lián)后,電路阻值可由公式 求解,下面能正確求出R的VB表達式是( A )。A.R1*R2/(R1+R2) B.R1+R2/(R1*R2)C.(R1+R2)/(R1*R2) D.R1*R2/R1+R2解析:電路阻值公式兩邊都乘以

5、R1*R2得(R1*R2)/R=R1+R2,所以總電阻RR1*R2/(R1+R2)6.關(guān)于算法的描述,下列選項中正確的是( D )A.算法只能用流程圖來表示B.一個算法的執(zhí)行步驟可以是無限的C.一個算法,當(dāng)沒有輸入時,也沒有輸出D.一個算法可以沒有輸入7.在VB語言中,字符串運算符“+”和“&”的作用是把兩個或多個字符串連接成一個字符串。則表達式"20"+"13"&"20+13"的運算結(jié)果是( B )。 A."" B."+13" C."" D."33

6、33"解析:舉幾個例子你就明白了。"222"+"333"=""222+333=555222+"333"=555222+"abc" 會報錯222 & 333 =222 & "333" = 222 & "abc" =222abc222 + "333" & "abc" = 555abc222 + "333" & "100" = 222

7、 & "333" +"100"=8.下列VB程序運行時(如圖所示),在文本框Text1中輸入20,在文本框Text2中輸入13,單擊命令按鈕Command1后,文本框Text3中顯示的內(nèi)容是( D )。Private Sub Command1_click() a=val(text1.text) b=val(text2.text)Text3.text= a+bEnd sub A.”2013” B.2013 C.”33” D.33解析:val是一個將字符串參數(shù)轉(zhuǎn)換成數(shù)值的函數(shù)。9.下列選項中,可以作為VB程序變量名的是( A ) A.ab B.a-b

8、 C.a/b D.a+b解析:vb中變量名的命名規(guī)則1、必須以字母開頭;2、只能使用英文字母、阿拉伯?dāng)?shù)字和下劃線(實際上可以使用漢字);3、不能和受到限制的關(guān)鍵字同名,如不能使用vbred、command等作為變量名;4、不能超過255個字符,控件、窗體、類和模塊的名字不能超過40個字符;5、不區(qū)分大小寫。10.下列VB表達式中,能正確表示不等式方程|x|>1解的是( D )A.x<-1 and x>1 B.x>-1 or x<1 C.x>-1 and x<1 D.x<-1 or x>111.算法的描述方法有多種,下列選項中不適合描述算法的

9、是(A)A.機器語言 B.偽代碼 C.流程圖 D.自然語言解析:算法的描述方式有:自然語言,流程圖,偽代碼等。1、自然語言的優(yōu)勢:自然語言即人類語言,描述的算法通俗易懂,不用專門的訓(xùn)練,較為靈活。2、流程圖的優(yōu)勢:流程圖描述的算法清晰簡潔,容易表達選擇結(jié)構(gòu),不依賴于任何具體的計算機和計算機程序設(shè)計語言,從而有利于不同環(huán)境的程序設(shè)計。3、偽代碼的優(yōu)勢:回避了程序設(shè)計語言的嚴(yán)格、煩瑣的書寫格式,書寫方便,同時具備格式緊湊,易于理解,便于向計算機程序設(shè)計語言過渡的優(yōu)點。12.巳知在VB語言中,int(x)函數(shù)的功能是返回不大于x的最大整數(shù),abs(x)函數(shù)的功能是返回x的絕對值,則表達式 abs(i

10、nt(2.88)+int(-3.14)的值是( D )。A.5 B.0 C.1 D.2解析:int(2.88)=2,int(-3.14)=-413.下列VB表達式中,值為字符串類型的是( D )。Sqr(x) Text1.Text command1.caption ”45”+”34”45+34 A. B. C. D. 解析:Sqr(x)函數(shù)返回一個數(shù)的平方根;45+34的值是79,類型應(yīng)該是數(shù)值型。14.一元二次方程ax2+bx+c=0(a0)的兩個實數(shù)根分別為:下列表達式正確的是( D ) A.x1=-b+sqr(b2-4*a*c)/(2*a) B.x2=-b-sqr(b2-4*a*c)/(

11、2*a) C.x1=(-b+sqr(b2-4ac)/(2*a) D.x2=(-b-sqr(b2-4*a*c)/(2*a)15.下列關(guān)于算法的描述錯誤的是( C )A.算法是解決某一類問題的方法和步驟B.算法可以使用自然語言、偽代碼、流程圖等多種不同的方法來描述C.一個有效的算法至少要有一個或多個輸入D.算法必須在有限步驟內(nèi)實現(xiàn)16.下列程序執(zhí)行后a、b的值分別是( B )a = 5b = 6a = a + bb = a - ba = a - bA、5、6 B、6、5 C、6、6 D、5、5解析:a=5,b=6, a=a+b=5+6=11, b=a-b=11-6=5, a=a-b=11-5=61

12、7.以下運算符中運算優(yōu)先級最高的是( D ) A、+ B、Mod C、>= D、*解析:在VB中,當(dāng)一個表達式中同時出現(xiàn)多種運算符時,運算次序由運算符的優(yōu)先級決定,優(yōu)先級高的運算符先運算,優(yōu)先級相同的從左向右進行運算。不同性質(zhì)的運算符優(yōu)先級如下。算術(shù)運算符 > 字符串運算符 >  關(guān)系運算符 >  邏輯運算符算術(shù)運算符:+ 加, - 減, * 乘, 指數(shù) 例:22 = 4/ (浮點)除 例:5 / 2 = 2.5 整除 例: 5 2 = 2Mod 求余數(shù) 例:5 Mod 2 = 1字符串運算符:“+”和“&”關(guān)系運算符: =賦值 <小于

13、號<>不等于>大于號>=大于等于號<= 小于等于號注意:關(guān)系表達式的運算結(jié)果為布爾值True 或 False,如:3 > 2 結(jié)果為 True(真或是)。邏輯運算符:Not(取反)And(與) Or(或)運算結(jié)果為布爾型(Boolean)True 或 False邏輯運算符的優(yōu)先級為:Not > And > Or18.在VB語言中表示“x屬于區(qū)間(0,1”的正確表達式是( C )A.0<x<=1 B.x>0 or x<=1 C.0<x and x<=1 D.x>0 and x<119.某VB的事件過程

14、如下:Private Sub Command1_Click() a=Val(Text1.text) b=a*a+1 Text1.Text=bEnd Sub程序運行時(如圖所示),在文本框Text1中輸入2,連續(xù)兩次單擊命令按鈕Command1后,Text1中顯示的內(nèi)容是( D )A.677 B.5 C.2 D.26解析:第1次a=2,b=a*a+1=2*2+1=5,第2次a=5,b=a*a+1=5*5+1=26。20.下列問題不能用算法描述的是( C )A.計算某班英語平均分B.求一元二次方程 ax2+bx+c=0(a0) 的兩個實數(shù)解C.求方程y=2x+1的所有整數(shù)解D.已知圓錐的底面半徑和

15、高,求表面積和體積解析:算法的有窮性,是指算法必須能在執(zhí)行有限個步驟之后終止。21.下面表達式的值是false的有( C ).A、"969" < "n97" B、int(4.99) <> len("basic")C、str(2000) > "1997" D、3 > 2解析:1.字符串比較是逐“字符”比較,這里是按字符的ASCII碼比較大小的,ASCII("9")<ASCII("n")。2.int(x)函數(shù)是取不大于x的最大整數(shù),int(4.

16、99)=4;len函數(shù)用來得知某字符串的長度(字符數(shù))或某變量的大小(位數(shù)),len("basic")=5。3.str函數(shù)可以將數(shù)字型變量或常量改變成字符型變量或常量,當(dāng)一數(shù)字轉(zhuǎn)成字符串時,總會在前頭保留一個空位來表示正負。如果 number 為正,返回的字符串包含一個前導(dǎo)空格暗示有一個正號。str(2000)=" 2000"。4.在微型計算機中,字符一般采用國際上通用的ASCII字符集。每一個字符在計算機內(nèi)部由8位二進制代碼表示。兩個單字符的比較,就是對它們的代碼值進行比較。例如:在ASCII字符表中,”A”的代碼值是65(十進制數(shù)),”B”的代碼值是

17、66(十進制數(shù)),所以”A”小于”B”。一般的規(guī)律是:空格代碼值最??;數(shù)字代碼值小于字母的代碼值。在數(shù)字代碼中,0的代碼值最小,9的代碼值最大。在字母中,代碼值的大小按字母順序遞增。以下是字符大小的次序(由小到大排列):空格! ” # $ % & () * + ,- 0 1 2 34 5 6 7 8 9 : ; <=> ? A B C D E F GH I J K L M N O P QR S T U V W X Y Z22.分析下列程序: Private Sub Form_Click() s=113 + 11 Mod 3 Print s End Sub當(dāng)單擊窗體時s的值是

18、( A )。A、5 B、6 C、4 D、3解析:注釋113=3,11mod3=223.長度分別為a、b、c的三條線段,能夠組成三角形的條件是( D ) A、a+b>c And a+c>b Or b+c>a B、a+b>c Or a+c>b Or b+c>a C、a+b>c Or a+c>b And b+c>a D、a+b>c And a+c>b And b+c>a24.已知海倫公式其中,a、b、c分別為三角形的三條邊長。利用海倫公式求三角形面積的算法屬于( D ) A、窮舉法 B、排序法 C、查找法 D、解析法解析:窮舉法

19、(枚舉法、列舉法):將求解對象一一列舉出來,然后逐一加以分析、處理,并驗證結(jié)果是否滿足給定的條件,窮舉完所有對象,問題最終得以解決。如:輸出100200之間不能被3整除的數(shù)。排序法:常用的排序方法有冒泡法,選擇法,插入法,順序交換法等。查找法:常用的查找方法有順序查找法,二分查找法。解析法:就是在分析具體問題的基礎(chǔ)上,抽取出一個數(shù)學(xué)模型,這個數(shù)學(xué)模型能用若干解析表達式表示出來,解決了這些表達式,問題也就得以解決。25.用計算機編程來求解某一方程的解,通常的步驟是( A ) A、分析問題設(shè)計算法編寫程序調(diào)試運行檢測結(jié)果 B、編寫程序調(diào)試運行 C、設(shè)計算法編寫程序 D、編寫程序調(diào)試程序檢測結(jié)果26

20、.如果三條線段的長分別為a、b、c,且已知abc,請問這三條線段能否構(gòu)成三角形,僅需下列選項中的哪個判定條件即可?( B ) A、其他選項都不對 B、a+b>c C、a+c>b D、b+c>a27.以下程序段中循環(huán)體執(zhí)行的次數(shù)是( A )s=0i=1Do While s<10i=i+1s=s+i*iLoopA、2 B、4 C、1 D、3解析:s=0,i=1,s<10 yesi=i+1=1+1=2s=s+i*i=0+2*2=4s=4,i=2,s<10 yesi=i+1=2+1=3s=s+i*i=4+3*3=13s=13,i=3,s<10 NO退出循環(huán)。2

21、8.二分查找又稱折半查找,是一種應(yīng)用于有序數(shù)列的高效查找算法,下列數(shù)列中適合用二分查找算法的是( D )(1)11 99 5 17 239 (2)305263717881(3)67323831515(4)857859521918A、(3)(4) B、(2)(3) C、(1)(2) D、(2)(4)解析:二分查找也稱折半查找(Binary Search),它是一種效率較高的查找方法。但是,折半查找要求線性表必須采用順序存儲結(jié)構(gòu),而且表中元素按關(guān)鍵字有序排列。查找過程首先,假設(shè)表中元素是按升序排列,將表中間位置記錄的關(guān)鍵字與查找關(guān)鍵字比較,如果兩者相等,則查找成功;否則利用中間位置記錄將表分成前、

22、后兩個子表,如果中間位置記錄的關(guān)鍵字大于查找關(guān)鍵字,則進一步查找前一子表,否則進一步查找后一子表。重復(fù)以上過程,直到找到滿足條件的記錄,使查找成功,或直到子表不存在為止,此時查找不成功。算法要求1.必須采用順序存儲結(jié)構(gòu)。2.必須按關(guān)鍵字大小有序排列。29.在vb語言中常用的字符串截取函數(shù)有:函數(shù)名功能示例結(jié)果Mid(s,m,n)從字符串s的第m位開始,截取長度為n的字串Mid("ABCDEFG",5,2)" EF"Left(s,n)截取字符串s左邊n個字符Left("ABCDEFG",3)"ABC"Right(s,

23、n)截取字符串右邊n個字符Right("ABCDEFG",2)" FG"假如某人身份證號碼S="",如果需要根據(jù)此身份證號碼求出該人的“出生年月日”。下列表達式不能實現(xiàn)的是( D )AMid(s,7,8) BRight(Left(s,14),8)CMid(s,7,4)+Mid(s,11,2)+Mid(s,13,2)DLeft(s,14)-Left(s,6)解析:D項相當(dāng)于219-=11730.如果一個4位數(shù)恰好等于它的各位數(shù)字的4次方和,則這個4位數(shù)成為“玫瑰花”數(shù)。例如1634就是一個玫瑰花數(shù):1634=14+64+34+44。如果

24、要求出所有的玫瑰花數(shù),下列算法最合適的是( D )A、解析法B、排序法C、查找法D、窮舉法解析:參考第24題解析。窮舉法(枚舉法、列舉法):將求解對象一一列舉出來,然后逐一加以分析、處理,并驗證結(jié)果是否滿足給定的條件,窮舉完所有對象,問題最終得以解決。如:輸出100200之間不能被3整除的數(shù)。31.下列流程圖中能描述循環(huán)結(jié)構(gòu)的是( A )A、 B、 C、 D、解析:32.下列程序段執(zhí)行后,變量s的值是( C )s=0Fori=1To10s=s+iNextiA、1B、0C、55D、10解析:s=0,i=1,s=s+i=0+1=1;s=1,i=2,s=s+i=1+2;s=1+2,i=3,s=s+i

25、=1+2+3;s=1+2+3+.+9,i=10,s=s+i=1+2+3+.+1033.已知在VB語言中,int(x)函數(shù)的功能是返回不大于x的最大整數(shù),F(xiàn)ix(x)函數(shù)的功能是返回x的整數(shù)部分(截掉x的小數(shù)部分)。表達式int(2.88)+Fix(-3.89)的值是( B )A、 0 B、 -1 C、 5 D、 -2解析:int(2.88)=2,F(xiàn)ix(-3.89)=-334.個整數(shù)n既能被3整除,也能被7整除,能正確表示該邏輯關(guān)系的VB表達式是( D )A、 n Mod 3 = 0 Or n Mod 7 = 0B、 n3 = 0 And n7 = 0C、 n3 = 0 Or n7 = 0D、

26、 n Mod 3 = 0 And n Mod 7 = 0解析: 整除 例:5 2 = 2Mod 求余數(shù) 例:5 Mod 2 = 135.下列VB的變量定義正確的是( A )A.Dim abc As IntegerB.Dim 4ac as BooleanC.Dim a*c as StringD.Dim for as Double解析:參考前面第3題和第9題的解析。36.下列表達式能判斷正整數(shù)x是偶數(shù)的是( B )A.x mod 2<>0B.x mod 2=0C.x mod 2=1D.x2=037.以下程序代碼主要體現(xiàn)了哪種程序結(jié)構(gòu)( B )x=100If x<O Theny =

27、 Abs(x)Elsey = Sqr(x)End IfA.順序結(jié)構(gòu) B.選擇結(jié)構(gòu) C.循環(huán)結(jié)構(gòu) D.其他三項都是38.如圖所示:三個文本框自上而下的順序是: Text1, Text2, Text3,在文本框Text1中輸入3,在文本框Text2中輸入4,單擊命令按鈕“計算”后,文本框Text3中顯示的內(nèi)容為( B )A、7B、14C、24D、12解析:val是一個將字符串參數(shù)轉(zhuǎn)換成數(shù)值的函數(shù)。a=3,b=4,結(jié)果=2*(a+b)=2*(3+4)=14。39.在VB中,能表示一元二次方程ax2+bx+c=0有兩個不相等的實數(shù)解的條件是( A )。A. b*b-4*a*c>0B. a<

28、>0C. a<> And b*b-4*a*c>0D. a<>0 Or b*b-4*a*c>040.下列程序段運行后,輸出“*”的個數(shù)是( 9 )。For i =2 To 10Print "*" Next iA、7B、8C、9D、1041.VB算術(shù)表達式68 Mod 10的結(jié)果是( B )A、6B、8C、0D、1442.下列流程圖中是選擇結(jié)構(gòu)的是( D )A. B. C. D.43、用計算機解決某個問題,問題分析清楚后,給出解決這個問題詳細的( A ), 這個過程稱為設(shè)計算法。A.方法和步驟 B.編程語言 C.程序代碼 D.加密措施4

29、4、以下程序段運行后,整形變量max1, min1的值分別是( D )。a=3b=5max1=(a+b)/2+Abs(a-b)/2min1=(a+b)/2-Abs(a-b)/2A.3,5 B.5,5 C.3,3 D.5,3解析:Abs是一個取絕對值的函數(shù)。max1=(a+b)/2+Abs(a-b)/2=(3+5)/2+|3-5|/2=4+1=5 min1=(a+b)/2-Abs(a-b)/2=(3+5)/2-|3-5|/2=4-1=345、已知賦值語句s="Good Bye!", 則下列定義變量s正確的是( A )。A.Dim s As String B.Dim s As

30、LongC.Dim s As Double D.Dim s As Integer解析:參考第3題解析,string:變長與定長的字符串。對于字符串類型變量,如果其存放的字符串長度是固定的,那么可以把它定義為定長字符串,如:Dim s As String * 50 '聲明固定長度字符串變量可最多放50個46、水仙花數(shù)是三位整數(shù):其各位數(shù)字立方和等于該數(shù)本身,如153=13+53+33。如果要求出所有的水仙花數(shù),下列算法最合適的是( C )。A.查找法 B.排序法 C.枚舉法 D.解析法解析:參考第24題解析。窮舉法(枚舉法、列舉法):將求解對象一一列舉出來,然后逐一加以分析、處理,并驗證

31、結(jié)果是否滿足給定的條件,窮舉完所有對象,問題最終得以解決。如:輸出100200之間不能被3整除的數(shù)。47、給定一個四位數(shù)的年份,判斷它是否為閏年:四年一閏、百年不閏;四百年又閏(年份能被4整除,不能被100整除是閏年,或者年份能被400整除也是閏年。例如2004年和2000年都是閏年,2100 年不是閏年)。下列判斷年份y是閏年的表達式正確的是( B )。A.y Mod 4=0B.y Mod 4=0 And y Mod 100<>0 Or y Mod 400=0C.y Mod 4=0 Or y Mod 100<>0 And y Mod 400=0D.y Mod 400=

32、048.以下程序段運行后,整型變量s的值是( C )。s=1for i=1 to 10 step 3s=s*inext iprint SA.28 B.55 C.280 D.3640解析:注意step是步長。s=1,i=1,s=s*i=1*1s=1*1,i=4,s=s*i=1*1*4s=1*1*4,i=7,s=s*i=1*1*4*7s=1*1*4*7,i=10,s=s*i=1*1*4*7*10=28049.己知S=1+2+3.+N,找出一個最大數(shù)N,使得S<3000。編寫程序,解決此問題,最適合的程序結(jié)構(gòu)是( C )。A.選擇結(jié)構(gòu) B.順序結(jié)構(gòu) C.循環(huán)結(jié)構(gòu) D.環(huán)形結(jié)構(gòu)解析:本題可用如下

33、VB程序?qū)崿F(xiàn)。Private Sub Command1_Click()Dim s As Long, n As Integern = 1s = 0Do While s < 3000n = n + 1s = s + nLoopPrint nEnd Sub50. 某晚會的猜數(shù)字游戲中,有100張寫有1100之間整數(shù)的卡片,主持人隨機抽取一張卡片,讓大家競猜。有一種方案是:第一次猜50,若提示低了,則第二次猜75,若提示還是低了,則第三次猜87,依次類推,這種每次縮小一半查找范圍而達到確定目標(biāo)的算法稱為( C )。A.順序查找法 B.解析法 C.二分查找法 D.排序法51、程序有三種基本結(jié)構(gòu),下

34、列不屬于這三種基本結(jié)構(gòu)的是( B )A.循環(huán)結(jié)構(gòu) B.樹形結(jié)構(gòu) C.選擇結(jié)構(gòu) D.順序結(jié)構(gòu)52、下列序列能采用二分查找法查找某一元素的是( B )。A.1,4,7,15,13 B.6,9,12,14,23,25C.34,25,17,9,10,3 D.15,14,12,7,2,353、以下程序段語句執(zhí)行后,y的值是( C )。x=16If x < 0 Theny = Abs(x)Elsey = Sqr(x)End IfA. 16 B.256 C.4 D.其他三項都不對54、下列選項中,能作為VB程序變量名的是( A )。A.sl B.s+1 C.3stu D.true55、Visual B

35、asic 程序設(shè)計語言屬于( B )。A.匯編語言 B.高級語言 C.機器語言 D.自然語言56、在VB中,用變量code存儲學(xué)生的借閱卡編碼(code="N"),則變量code的數(shù)據(jù)類型應(yīng)定義為( B )。A.Integer B.String C.Boolean D.Double57、以下程序段運行后,x和st的值分別是( A )。Dim x As IntegerDim st As Stringx=123 + 678st="123"+"678"A.801 "" B.801 "801"C. &q

36、uot;801" D. ""58、a=2,b=5,在VB中,表達式a>b And b>3 的值是( D )A. True B. 1 C.-1 D. False解析:a>b And b>3 = 2 > 5 and 5 > 3 = false and true =false59、以下程序段運行后,s的值是( D )。n=0s=0Do While s<=10n=n+3s=s+nLoopA.0 B.3 C.30 D.18解析:n=0,s=0,s<=10 yesn=n+3=0+3=3,s=s+n=0+3=3;n=3,s=3,s

37、<=10 yesn=n+3=3+3=6,s=s+n=3+6=9;n=6,s=9,s<=10 yesn=n+3=6+3=9,s=s+n=9+9=18n=9,s=18,s<=10 no 退出循環(huán) 60、 下列選項中,能作為VB程序變量名的是( C )A.a*b B.3ab C.xy D.dim二、分析題1.“完數(shù)”是指一個自然數(shù)恰好等于它的因子(不包含本身)之和。如6的因子為1、2、3,6=1+2+3,因而6就是完數(shù)。再如28的因子為1、2、4、7、14,28=1+2+4+7+14,因而28也是完數(shù)。問題:輸入一個正整數(shù),判斷該正整數(shù)是否為完數(shù)。要判斷一個數(shù)是否為完數(shù),最簡單的方

38、法是:求出1到n-1之間n的所有因子和為Sum,如果Sum的值和n的值相同,則n就是完數(shù)。以下代碼是判斷n是否為完數(shù)的程序片段,請你補全代碼。(10分)Dim n As LongDim Sum As Long Sum用來記錄n的因子和Dim i as integern=InputBox("n=")sum = 0For i=1 to n-1 求n的因子和sum If n Mod i=0 Then Sum = End IfNext iIf sum = Then Print n & "是完數(shù)"Else Print n &"不是完數(shù)&q

39、uot;End If sum+i n2.圓周率值的計算方法有多種,其中一種近似值的計算公式如下:26=1+122+132+1n2對于n的不同取值,得到的值精度不同。如:當(dāng)n=時,計算出=3.646, 當(dāng)n=時,計算出=3.051。以下程序是利用上述公式求n=時近似值的主要程序片段,請你補全代碼。(8分)Dim s As DoubleDim pi As DoubleDim i as integers=0For i=1 to '求公式右邊的值 s= s + 1/ (i * i )Next ipi= sqr(6*s) Print "="pi解析: 根據(jù)程序片段可

40、以公式右邊的值為s,即pi2/6=s,所以,pi2=6*s,pi=sqr(6*s)3. 閱讀程序,寫出其程序運行結(jié)果(8分)。Dim x As IntegerDim y As Integery = 0For i = 1 To 5x = Val (InputBox("請輸入")y = y+xNext iPrint y程序運行后,依次輸入: 10 20 30 40 50程序輸出的結(jié)果是: 150 解析:本題就是把輸入的5個數(shù)值相加。4、VB語言中繪制圓的方法是:Circle (x,y),r格式說明:其中(x,y)為圓心坐標(biāo),r為圓的半徑。下表中算法1是在窗體中繪制以(2000,

41、2000)為圓心,半徑依次為100、200、到800的8個同心圓。請補充完成算法2,使其實現(xiàn)與算法1相同的功能。(6分)算法1算法2Circle (2000,2000),100Circle (2000,2000),200Circle (2000,2000),300Circle (2000,2000),400Circle (2000,2000),500Circle (2000,2000),600Circle (2000,2000),700Circle (2000,2000),800Dim k As IntegerFor k=1 To 8 Circle(2000,2000), K*100 Next

42、 k5、閱讀下列程序,請寫出正確的運行結(jié)果 Dim a as integer Dim b as integer Dim c as integer a=1 b=1 For i=1 to 4 c=a+ba=bb=cNext iPrint c運行結(jié)果是: 8 解析:a=1,b=1,c=a+b=2,a=b=1,b=c=2;a=1,b=2,c=a+b=1+2=3,a=b=2,b=c=3;a=2,b=3,c=a+b=2+3=5,a=b=3,b=c=5;a=3,b=5,c=a+b=3+5=8,a=b=5,b=c=8,c=86、閱讀下列程序,寫出運行結(jié)果Dim n as longDim s as longDi

43、m x as longn=val(inputbox("n=")s=0Do while n>0 x = n Mod 10 s = s+x n= n10loopprint s程序運行時,輸入518,運行輸出結(jié)果是: 14 (6分)(提示: (整除運算) 如:23710=23Mod (取余數(shù)運算) 如:237 Mod 10=7)解析:n=518,s=0 n>0 yesx=n mod 10=518 mod 10=8s=s+x=0+8=8n=n10=51810=51n=51,s=8,n>0 yesx=n mod 10=51 mod 10=1s=s+x=8+1=9n=

44、n10=5110=5n=5,s=9,n>0 yesx=n mod 10=5 mod 10=5s=s+x=9+5=14n=n10=510=0n=0,s=14,n>0 no輸出s = 147、某VB的事件過程如下:Private Sub Command1_Click()a=val(text1.text)b=a*a+1text1.text=bEnd sub程序運行時(如圖所示),在文本框text1中輸入2,連續(xù)2次單擊命令按鈕Command1后,text1中顯示的是 26 解析:a=2,b=a*a+1=2*2+1=5,text1.text=b=5a=5,b=a*a+1=5*5+1=26,

45、text1.text=b=268、2005年10月9日,國家測繪局正式宣布珠穆朗瑪峰的高度是8844.43米,并停用之前的數(shù)據(jù)?,F(xiàn)有一張白紙的厚度大約是0.08毫米,對折一次,厚度變0.16毫米,再對折一次,厚度變?yōu)?.32毫米,每對折一次,其厚度均變?yōu)閷φ矍暗膬杀?。假設(shè)這張紙有足夠大,可對折任意次,那么這張紙至少對折多少次后,其厚度將超過珠穆朗瑪峰的高度。以下是求解該問題的程序片段,請你補全代碼。(4分)Height=8844.43 珠穆朗瑪峰的高度是8844.43米h=0.08 一張紙的厚度約是0.08毫米cnt=0 cnt用來記錄對折次數(shù)Do while h<Height*1000

46、 cnt=cnt+1 h= h*2 LoopPrint cnt解析:也可以用n 來記錄對折次數(shù)。9、以下是求解一元二次方程ax2+bx+c=0(a0)的主要源程序,請你補全代碼:(8分)a=val(inputbox("a=")b=val(inputbox("b=")c=val(inputbox("c=")d= b*b-4*a*c 求判別式dIf d>0 then X1=(-b+sqr(d)/(2*a)X2=(-b-sqr(d)/(2*a)Print "x1="x1Print "x2="x2

47、End ifIf d=0 thenPrint "x1="-b/(2*a)End ifIf d<0 then Print "無實數(shù)解!" End if10、閱讀下列程序,選出運行結(jié)果For i=1 to 10 i控制*的行數(shù) For j=1 to i j控制每行的個數(shù) Print "*" 輸出*Next jPrint 輸出換行Next i運行結(jié)果是: D (請用英文字母填寫,6分)11、分析解答問題:執(zhí)行情況如下: 當(dāng)輸入a、b的值分別為3、8時,輸出結(jié)果為5 當(dāng)輸入a、b的值分別為11、7時,輸出結(jié)果為4問題一:下列流程圖填入虛

48、線框中,符合條件的是 B 開始輸入a、b的值輸出c的值結(jié)束 A B C問題二:依據(jù)問題一所選流程圖,當(dāng)輸入a、b的值分別為9、6時,輸出結(jié)果為 3 。解析:當(dāng)輸入a、b的值分別為3、8時,輸出結(jié)果為5,即a=3,b=8時,c=b-a=5;當(dāng)輸入a、b的值分別為11、7時,輸出結(jié)果為4,即a=11,b=7時,c=a-b=4;這是說明當(dāng)a>b時,c=a-b,否則,c=b-a。12、閱讀下列程序,寫出運行結(jié)果Dim x as IntegerDim y as Integery=Val(InputBox("y=")輸入第一個數(shù)賦值給yFor i=1 to 3 循環(huán)3次,每次輸入

49、1個數(shù) x= Val(InputBox("x=") If x<y then y=x End ifNext iPrint y程序運行后,依次輸入:45961137運行輸出結(jié)果是: 11 解析:y=45,x=96,x<y no 執(zhí)行第2次循環(huán),接著輸入x;y=45,x=11,x<y yes y=x=11,接著輸入x;y=11,x=37,x<y no 輸出y=11;13、分析完善程序:問題:輸入一個正整數(shù)n(n>=3),判斷該正整數(shù)是否為素數(shù)(質(zhì)數(shù))。要判斷一個數(shù)n是否為素數(shù),最簡單的方法是:統(tǒng)計2到n-1之間的所有能整除n的整數(shù)個數(shù),若s大于0,則

50、n不是素數(shù),否則就是素數(shù)。根據(jù)以上方法,完善一下程序代碼;(8分)n= Val(InputBox("n=")s=0for i=2 to n-1 if n Mod i=0 Thens= s+1 統(tǒng)計因數(shù)個數(shù)end ifNext iIf S<=0 then Print n &"是素數(shù)"ElsePrint n &"不是素數(shù)"End If解析:假如輸入一個數(shù)5,則n=5,s=0,i=2 to n-1即i從2到4s=0,i=2,n mod i=5 mod 2=1<>0 next i;s=0,i=3,n mod

51、i=5 mod 3=2<>0 next i;s=0,i=4,n mod i=5 mod 4=1<>0,s=0<=0 yes Print n &"是素數(shù)"假如輸入一個數(shù)4,則n=4,s=0,i=2 to n-1即i從2到3s=0,i=2,n mod i=4 mod 2=0=0 yes s=s+1=1;s=1,i=3,n mod i=4 mod 3=1<>0 s=1<=0 no Print n &"不是素數(shù)"14、分析完善程序:考拉茲猜想:考拉茲猜想又稱為3n+1猜想,是指對于每一個正整數(shù),如果

52、它是奇數(shù),則對它乘3再加1;如果它是偶數(shù),則對它除以2;如此循環(huán),最終都能夠得到1;如n=6,根據(jù)上述規(guī)則,得出63105168421。(共有8個步驟)以下是驗證考拉茲猜想的主要VB程序片段,請你補全代碼:(8分)n= Val(InputBox("n=")cnt=0 統(tǒng)計步驟數(shù)Do While n>1 Cnt=cnt+1 If n Mod 2 =0 then n= n/2 Elsen= n*3+1 End IfLoopPrint cnt 輸出步驟數(shù)15、閱讀下列程序,寫出運行結(jié)果Dim Sum As IntegerDim K As IntegerSum=0For k=1 to 20 If k Mod 2=0 ThenSum=Sum+kEnd ifNext kPrint Sum程序運行后輸出結(jié)果是: 110 解析:本題即是求從1到20這些數(shù)中的偶數(shù)的和。即2+4+6+8+10+12+14+16+18+20=11016、Dim sum as long Dim i as long sum=0 i=0 Do while sum <10 i=i+1 sum=sum+i*i loop print sum運行結(jié)果: 14 解析:sum=0,

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論