第一篇:算法與程序設(shè)計VB試題與答案08
VB08
1、打開“考生文件夾781”中的文件“test4.vbp”,完善Command1_Click事件代碼并保存。
實現(xiàn)功能:回文字符串是指一個字符串從左往右讀與從右往左讀是一樣的,如“ABCBA”,“123321”等等。輸入一個字符串,若是回文字符串,則輸出“Yes”,否則輸出“No”。使用文本框Text1輸入字符串,使用文本框Text2輸出結(jié)果。
Private Sub Command1_Click()Dim s As String Dim ok As String Dim i As Integer s = Text1.Text ok = “Yes” For i = 1 To ①
If Mid(s, i, 1)<> ② Then ok = “No” Next i ③ End Sub ①len(s)2 ②Mid(s, len(s)+1-i, 1)③text2.text=ok
2、打開文件“考生文件夾606工程1.vbp”,完善Command1_Click事件代碼并保存。
實現(xiàn)功能:當(dāng)單擊“計算1+2+3+…+100”按鈕后,文本框Text1顯示1+2+3+…+100的值。
Private Sub Command1_Click()Dim s As Integer Dim i As Integer s = ①
For i = 1 To ② s = ③ Next i Text1.Text = Str(④)End Sub ①0 ②100 ③s+i ④s
3、打開“考生文件夾779test2.vbp”,完善Command1_Click事件代碼并保存。
實現(xiàn)功能:輸入一個正整數(shù),計算并輸出它的各位數(shù)字之和。如輸入123,則輸出6。使用文本框Text1輸入正整數(shù),使用文本框Text2輸出計算結(jié)果。
Private Sub Command1_Click()Dim x As Integer Dim s As Integer x = Val(Text1.Text)① Do s = s + ② x = x 10 Loop Until x = 0 ③ End Sub ①s=0 ②x mod 10 ③text2.text=str(s)
4、打開文件“考生文件夾607工程1.vbp”,完善Command1_Click事件代碼并保存。
實現(xiàn)功能:當(dāng)單擊“顯示”按鈕后,隨機產(chǎn)生10個屬于區(qū)間[0,100)的自然數(shù),并保存于數(shù)組a中,然后在窗體上顯示這10個數(shù)及其平均值。(注:學(xué)生運算結(jié)果有可能跟樣圖中數(shù)值不一致)
Private Sub Command1_Click()Dim a(9)As Integer Dim s As Single Dim i As Integer Me.Cls s = 0 Randomize For i = 0 To ① a(i)= Int(Rnd * 100)Print a(i)Next i For i = 0 To 9 s = ②
③
Print “這10個自然數(shù)的平均值=”;s / 10 End Sub ①9
②s+a(i)③next i
5、打開文件“考生文件夾609工程1.vbp”,完善Form_Click事件代碼并保存。
實現(xiàn)功能:單擊窗體時在窗體上打印下面所示的圖案。
**** *** ** *
Private Sub Form_Click()Dim i As Integer Dim j As Integer For i = ① To 1 Step-1 For j = 1 To i ② Next j Print ③ End Sub ①4
②print “*”;③next i
6、打開文件“考生文件夾610工程1.vbp”,完善Command1_Click事件代碼并保存。
實現(xiàn)功能:當(dāng)單擊“顯示”按鈕后,在窗體上顯示下面的圖形:
@ @@ @@@ @@@@ @@@@@ @@@@@@
Private Sub Command1_Click()Dim i As Integer Dim j As Integer For i = 1 To 6 For j = 1 To ① Print ② Next ③ Print Next i End Sub ①i
②”@”;③j
第二篇:算法與程序設(shè)計VB試題與答案10
VB10
1、打開文件“考生文件夾178工程1.vbp”,完善Command1_Click事件及fac函數(shù)并保存。
實現(xiàn)功能:用遞歸法求3!+5!+7!的值,將結(jié)果輸出到窗體上。
Public Function fac(a As Integer)As Integer If a = 1 Then fac = ① Else fac = a * ②(a1)+ fib(n1)End If End Function
Private Sub Command1_Click()Dim sum As Integer sum = s(③)Print “sum=”;sum End Sub ①1 ②n ③100
6、打開“考生文件夾776”中的文件“蝸牛爬竹.vbp”,完善Command1_Click事件代碼并保存。
實現(xiàn)功能:青竹高17米,蝸牛從青竹底端慢慢爬向頂端,晴天每天爬1.4米,雨天每天爬1.8米,若蝸牛爬到頂端用了11天,計算晴天、雨天各多少天?(晴天對應(yīng)文本框text1,雨天對應(yīng)文本框text2)
Private Sub Command1_Click()Dim x As Single Dim y As Integer y =(171.4)① = 11-y Text1.Text = Str(②)+ “天” Text2.Text = Str(③)+ “天” End Sub ①x ②x ③y
第三篇:VB程序設(shè)計試題與答案
1.要使一個標(biāo)簽?zāi)軌蝻@示所需要的文本,應(yīng)設(shè)置該標(biāo)簽的()屬性的值(單)A.Caption B.Name
C.Text D.AutoSize 2.為使計時器對象每隔5秒鐘產(chǎn)生一個時鐘事件(Timer事件),則其Interval屬性值應(yīng)設(shè)置為()(單)A.5
B.300
C.500
D.5000 3.下列的()對象支持KeyPress事件(單)A.文本框
B.命令按鈕
C.標(biāo)簽框
D.圖像框 4.確定一個控件在窗體上的位置的屬性是()(單)A.Width或Height
B.Top和Height
C.Top或Width
D.Top和Left 5.確定一個窗體或控件的大小的屬性是()(單)A.Width或Height
B.Top和Width
C.Top或Left
D.Top和Left
6.用戶在屏幕上畫出應(yīng)用程序界面,并設(shè)置好對象的屬性,系統(tǒng)便可以自動生成程序代碼,這稱為()(單)A.面向?qū)ο蟮某绦蛟O(shè)計
B.結(jié)構(gòu)化程序設(shè)計
C.事件驅(qū)動的編程機制
D.程序設(shè)計 7.在VB中,工程文件的擴展名是()(單)A..frm
B..vbp
C..bas
D..frx 8.在VB中,窗體文件的擴展名是()(單)A..frm B..vbp
C..bas
D..frx 9.VB集成開發(fā)環(huán)境可以(單)A.編輯、調(diào)試、運行程序,但不能生成可執(zhí)行程序 B.編輯、生成可執(zhí)行程序、運行程序,但不能調(diào)試程序 C.編輯、調(diào)試、生成可執(zhí)行程序,但不能運行程序 D.編輯、調(diào)試、運行程序,也能生成可執(zhí)行程序 10.英文“VISUAL”的含義是()(單)A.可視化
B.集成C.結(jié)構(gòu)化
D.調(diào)試
11.標(biāo)準(zhǔn)模塊文件的擴展名是()(單)A.frm B.vbp C.bas
D.vbg 12.VB集成開發(fā)環(huán)境中,在()中編寫代碼(單)A.狀態(tài)欄
B.屬性列表框
C.代碼框
D.標(biāo)題欄
13.在面向?qū)ο蟮某绦蛟O(shè)計過程中,英文縮寫“OOP”的含義是()(單)A.事件驅(qū)動的編程機制
B.結(jié)構(gòu)化程序設(shè)計語言
C.面向?qū)ο蟮某绦蛟O(shè)計
D.可視化程序設(shè)計
14.在窗體上畫一個名稱為Timer1的計時器控件,要求每隔0.5秒發(fā)生一次計時器事件,則以下正確的屬性設(shè)置語句是()(單)A.Timer1.Interval=0.5
B.Timer1.Interval=5
C.Timer1.Interval=50 D.Timer1.Interval=500 15在窗體上畫一個名稱為Command1的命令按鈕,然后編寫如下事件過程: Private Sub Command1_Click()a$=“VisualBasic” Print String(3,a$)End Sub 程序運行后,單擊命令按鈕,在窗體上顯示的內(nèi)容是()(單)A.VVV
B.Vis
C.sic
D.11
16.以下關(guān)于多重窗體程序的敘述中,錯誤的是()(單)A.用Hide方法不但可以隱藏窗體,且能清除內(nèi)存中的窗體 B.在多重窗體程序中,各窗體的菜單是彼此獨立的 C.在多重窗體程序中,可以根據(jù)需要指定啟動窗體 D.對于多重窗體程序中,單獨保存每個窗體 17以下合法的Visual Basic變量的名稱是()(單)A.a3
B.Const
C.9abc
D.a#x!
18.當(dāng)一個復(fù)選框被選中時,它的Value屬性的值是()(單)A.3
B.2
C.1
D.0
19.表達(dá)式 5 Mod 3+53的值是()(單)A.0
B.3
C.4
D.6
20設(shè)x=4,y=8,z=7, 表達(dá)式:(x<y)Or z<x 的值是()(單)A.1
B.-1 C.TRUE D.FALSE 21設(shè)有如下程序段: x=2 For c=1 To 4 Step 2 x=x+c Next c 運行以上程序后,x的值是()(單)A.6 B.7 C.8 D.9
22執(zhí)行如下兩條語句,窗體上顯示的是()(單)A=9.8596 Print Format(a,“000.00”)A.0,009.86 B.9.86 C.009.86 D.0,009.86
23下列說法中正確的是:為了保存一個Visual Basic應(yīng)用程序,應(yīng)當(dāng)()(單)A.只保存窗體模塊文件(.frm)B.只保存工程文件(.vbp)C.分別保存工程文件和標(biāo)準(zhǔn)模塊文件(.bas)D.分別保存工程文件、窗體文件和標(biāo)準(zhǔn)模塊文件
24.要使一個文本框?qū)ο竽軌蝻@示多行文字,應(yīng)設(shè)置該對象的()屬性值為True(單)A.Text B.MultiLine C.Style D.Visible 25.若要將窗體從內(nèi)存中卸載,其實現(xiàn)的方法或語句是()(單)A.Show B.Unload C.Load D.Hide 26.以下選項中,不是VB標(biāo)準(zhǔn)控件的是()(單)A.命令按鈕 B.定時器 C.通用對話框 D.單選框
27在窗體上畫一個名稱為Command1的命令按鈕,然后編寫如下程序: Dim a As Variant a = Array(1, 2, 3, 4, 5)Sum = 0 For i = 1 To 5 Sum = Sum + a(i1)“, a(i1)> x Then Print a(iNum2 Case 3 Op = ”ד Result = Num1 * Num2 Case 4 Op = ”÷“ Result = Num1 / Num2 End Select Label1= Num1 & Op & Num2 & ”=“ & Result End Sub 窗體運行后,輸入1,則label1的標(biāo)題顯示結(jié)果為()(單)A.3+2=5 B.3-2=1 C.3×2=6 D.3÷2=1.5
42在窗體上畫一個名稱為Text1的文本框,然后畫一個名稱為HScroll1的滾動條,其Min和Max屬性分別為0和100。程序運行后,如果移動滾動框,則在文本框中顯示滾動條的當(dāng)前值,以下能實現(xiàn)上述操作的程序段是()(單)A.Private Sub HScroll_Change()Text1.Text=HScroll1.Value End Sub
B.Private Sub HScroll_Click()Text1.Text=HScroll1.Value End Sub C.Private Sub HScroll_Change()Text1.Text=HScroll.Caption End Sub D.Private Sub HScroll_Click()Text1.Text=HScroll.Caption End Sub
43.在窗體上畫一個名稱為Command1的命令按鈕,然后編寫如下事件過程: Private Sub Command1_Click()x=InputBox(”Input“)Select Case x Case 1,3 Print ”分支 1“ Case Is>4 Print ”分支 2“ Case Else Print ”Else 分支 “ End Select End Sub 程序運行后,如果在輸入對話框中輸入2,則窗體上顯示的是()A.分支1 B.分支2 C.Else分支 D.程序出錯
44.隨機產(chǎn)生10個100~200之間的數(shù),求它們的最大值程序如下: Private Sub Command1_Click()Max = 100 For i = 1 To 10 x = int【 】 Print x;If x > Max Then Max=x Next i Print Print ”最大值=“;Max End Sub 45設(shè)a=10,b=5,c=1,執(zhí)行語句Print a >b > c后,窗體上顯示的是()(單)A.True B.False C.1 D.出錯信息
(46)在窗體上建立通用對話框需要添加的控件是
A)Data控件 B)From控件 C)CommonDialog控件 D)VBComboBox控件
(47)在Visual Basic中,要將一個窗體加載到內(nèi)存進(jìn)行預(yù)處理但不顯示,應(yīng)使用的語句是 A)Load B)Show C)Hide D)Unload
48)Sub過程與Function過程最根本的區(qū)別是
A)Sub過程可以用Call語句直接使用過程名調(diào)用,而Function過程不可以
B)Function過程可以有形參,Sub過程不可以
C)Sub過程不能返回值,而Function過程能返回值 D)兩種過程參數(shù)的傳遞方式不同
49保存一個工程至少應(yīng)保存兩個文件,這兩個文件分別是)A)文本文件和工程文件 B)窗體文件和工程文件 C)窗體文件和標(biāo)準(zhǔn)模塊文件 D)類模塊文件和工程文件
50.當(dāng)對命令按鈕的Picture屬性裝入.bmp圖形文件后,命令按鈕上并沒有顯示所需的圖形,原因是沒有對某個屬性設(shè)置為1,該屬性是
A)MousePicture B)Style C)DownPicture D)DisabledPicture
51假設(shè)變量bool_x是一個布爾型(邏輯型)的變量,則下面正確的賦值語句是)A)bool_x=”False“ B)bool_x=.False.C)bool_x=#False# D)bool_x=False
52.設(shè)S=“中華人民共和國”,表達(dá)式Left(S,1)+Right(S,1)+Mid(S,3,2)的值為()A)“中華民國”
B)“中國人民”
C)“中共人民”
D)“人民共和” 53下列表達(dá)式的值為2123的是()
A)Val(”123asd“)& 2000 B)Val(”123asd“)+ 2000 C)Str(123)& ”2000“ D)Str(123)+”2000“ 54假設(shè)在窗體上建立了一個通用對話框,其名稱為CommonDialog1,然后畫一個命令按鈕Command1,并編寫如下事件過程: Private Sub Command1_Click()CommonDialog1.Flags=4 CommonDialog1.Filter=”all files(*.*)|*.*|text Files(*.Txt)|*.txt|Batch Filse(*.bat)|*.bat“ CommonDialog1.FilterIndex=1 CommonDialog1.ShowOpen MsgBox CommonDialog1.FileName End Sub 程序運行后,單擊命令按鈕,將顯示一個“打開”對話框,此時在“文件類型”對話框中顯示的是()
A)All Files(*.*)B)Text Files(*.Txt)C)Batch Files(.bat)D)不確定
55當(dāng)運行程序時,系統(tǒng)自動執(zhí)行啟動窗體的某個事件過程。這個事件過程是()A)Load B)Click C)Unload D)GotFocus 56.無論何控件,都具有一個共同屬性。這個屬性是()A)Text B)Font C)Name D)Caption 57.在一行內(nèi)寫多條語句時,語句之間要用某個符號分隔。這個符號是()A),B);
C)、D):
58.表達(dá)式12000 + ”129“ & 200的值是
A)12329 B)”12129200“ C)”12000129200“ D)”12329“ 59.Visual Basic是一種面向?qū)ο蟮某绦蛟O(shè)計語言,構(gòu)成對象的三要素是()
A)屬性、控件和方法 B)屬性、事件和方法 C)窗體、控件和過程 D)控件、過程和模塊
60表達(dá)式String(1,”I am student“)+ Replace(”am harass“,”rass“,”ppy“)& ”!“的值是()A)”I am happy!“ B)”I am student I am s am harass studentam happy!“ C)”I am student am harass!“ D)”I am student am happy!“ 61.引用列表框(List1)最后一個數(shù)據(jù)項應(yīng)使用的表達(dá)式是()A)List1.List(List1.ListCount)B)List1.List(List1.ListCount-1)C)List1.List(ListCount)D)List1.List(ListCount-1)62.以下屬性和方法中,可重定義坐標(biāo)系的是)
A)DrawStyle屬性 B)DrawWidth屬性 C)Scale方法 D)ScaleMode屬性 63.下面說法不正確的是()A)滾動條的重要事件是Change和Scroll B)框架的主要作用是將控件進(jìn)行分組,以完成各自相對獨立的功能 C)組合框是組合了文本框和列表框的特性而形成的一種控件
D)計時器控件可以通過對Visible屬性的設(shè)置,在程序運行期間顯示在窗體上
64.在窗體上畫一個名稱為Check1復(fù)選框,在程序運行的過程中,若選中復(fù)選框,則Check1.value的值是()A)True B)2 C)0 D)1 65.下列關(guān)于過程敘述不正確的是()
A)過程的傳值調(diào)用是將實參的具體值傳值遞給形參 B)過程的傳址調(diào)用是將實參在內(nèi)存的地址傳遞給形參
C)過程的傳值調(diào)用參數(shù)是單向傳遞的,過程的傳址調(diào)用參數(shù)是雙向傳遞的 D)無論過程傳值調(diào)用還是過程傳址調(diào)用,參數(shù)傳遞都是雙向的
66.為了使標(biāo)簽?zāi)茏詣诱{(diào)整大小以顯示全部文本內(nèi)容,應(yīng)把標(biāo)簽的【 】屬性設(shè)置為true。67.要想在文本框中顯示垂直滾動條,必須把scrollbars屬性設(shè)置為2,同時還應(yīng)把【 】屬性設(shè)置為true。
68.假定有一個文本框,其名稱為text1,為了使該文本框具有焦點,應(yīng)執(zhí)行的語句是【 】.setfocus。
69.假定有一個名為pic2.bmp的圖形文件,要在運行期間把該文件裝入一個圖片框,應(yīng)執(zhí)行的語句為 圖片控件名.picture=【
】。
70.為了能自動放大或縮小圖像框中的圖形以與圖像框的大小相適應(yīng),必須把該圖像框的【 】屬性設(shè)置為true。
71.窗體、圖片框或圖像框中圖形通過對象的【 】屬性設(shè)置。72.計時器事件之間的間隔通過【
】屬性設(shè)置。
73.有時候要暫關(guān)閉計時器,這可以通過【 】屬性設(shè)置為false來實現(xiàn)。74.設(shè)a=sqr(2),則語句Print format$(a,”000.0“)的輸出結(jié)果是【 】。75.設(shè)a=sqr(3),則語句Print format$(a,”###.0“)的輸出結(jié)果是【 】。76.VB應(yīng)用程序通常由3類模塊組成,即窗體模塊、【 】模塊和類模塊。
77在窗體上畫兩個文本框和一個命令按鈕,然后在命令按鈕的代碼窗口中編寫如下事件過程:
Private sub command1_click()text1.text=”vb“ text2.text=text1.text
text1.text=”abcd“ End Sub 程序運行后,單擊命令按鈕,文本框text2中顯示的內(nèi)容為 ________。
78.在保存VB應(yīng)用程序時,窗體文件和工程文件的擴展名分別為【.】和.vbp。79.下列可作為VB的變量名的是()(單)A.Filename B.A3B C.254D D.Print 80.與下列數(shù)學(xué)式cos2(c+d)對應(yīng)的VB表達(dá)式是【 】。81.與下列數(shù)學(xué)式2a(7+b)對應(yīng)地VB表達(dá)式是【 】。82.在VB中,字符串常量要用【 】括起來。83.下面的事件不屬于鼠標(biāo)器事件的是()(單)A.MouseDown事件 B.MouseUp事件 C.MouseMove事件 D.Move事件 84.下面的事件不屬于鍵盤事件的是()(單)A.KeyPress事件 B.KeyDown事件 C.KeyUp事件 D.KeyMove事件
85.對以下程序說法不正確的是()(單)Private Sub FileOpen_Click()CommonDialog1.InitDir = ”C:“ CommonDialog1.Filter = ”文本文件 | *.Txt“ CommonDialog1.ShowOpen End Sub A.顯示”文件“打開對話框 B.打開的對話框的初始目錄為C盤根目錄 C.打開的對話框的文件類型為文本文件 D.以上說法都不正確
86.以下程序是求最大公約數(shù)和最小公倍數(shù)的程序,在【】處填寫合適的關(guān)系運算符。Private Sub Form_Click()Dim m1, n1, m, n, r As Integer n1 = InputBox(”輸入自然數(shù)n“, ”輸入數(shù)“)m1 = InputBox(”輸入自然數(shù)m“, ”輸入數(shù)“)n = n1 m = m1 If m <n Then t = m: m = n: n = t End If r = m Mod n Do While r 【 】 0 m = n n = r r = m Mod n Loop Print ”最大公約數(shù)=“, n Print ”最小公倍數(shù)= “, m1 * n1 / n End Sub 87.下面是求100以內(nèi)素數(shù)的程序。Private Sub Command1_Click()Dim i As Integer, m As Integer, tag As Boolean
For m = 2 To 100 tag = True For i = 2 To m-1 If m Mod 【 】 = 0 Then tag = False Next i If tag Then Print m Next m End Sub 88.百元買百雞問題: 假定小雞每只5角,公雞每只2元,母雞每只3元?,F(xiàn)在有100元錢要求買100只雞,以下程序列出了所有可能的購雞方案。Private Sub Command1_Click()Dim x%, y%, z% For x = 0 To 33 For y = 0 To 50 For z = 0 To 100 If 3 * x + 2 * y + 0.5 * z = 100 And 【 】 Then Picture1.Print x, y, z End If Next z Next y Next x End Sub 89.隨機產(chǎn)生10個100~200之間的數(shù),求它們的最大值程序如下: Private Sub Command1_Click()Max = 100 For i = 1 To 10 x = int【 】 Print x;If x > Max Then Max=x Next i Print Print ”最大值=“;Max End Sub 90.以下是求1~100之間5或7的倍數(shù)的和,如下程序段: Sum = 0 For i = 1 To 100 If i Mod 5 = 0 Or i Mod 7 = 0 Then 【】 End If Next i Print Sum 其中【】處書寫正確的是()(單)A.Sum = i B.Sum = Sum +i C.Sum = Sum + 5+7 D.以上都不正確 91.要使得在按下鼠標(biāo)左鍵時,激發(fā)mousedown事件,可以設(shè)置此事件中的button參數(shù)為()(單)
A.0 B.1 C.2 D.4 92.要使得在按下鼠標(biāo)右鍵時,激發(fā)mousedown事件,可以設(shè)置此事件中的button參數(shù)為()(單)A.0 B.1 C.2 D.4 93.刪除列表框中所有的項目所使用的方法為()(單)A.move B.remove C.clear D.removeitem 94.在窗體上畫一個命令按鈕,然后編寫如下事件過程: Private Sub command1_click()Dim a As String, b As String a = InputBox(”Enter the First integer“)b = InputBox(”Enter the Second integer“)Print b + a End Sub程序運行后,單擊命令按鈕,先后在兩個輸入對話框中分別輸入456和111,則輸出結(jié)果是()(單)A.456 B.111 C.567 D.111456 95.傳值:形參得到的是實參的值,形參值的改變不會影響實參的值。在定義形參前加關(guān)鍵字Byval。
96.以下利用SUB關(guān)鍵字定義的子過程Rate,其調(diào)用格式不正確的是()(單)A.call Rate(12,56)B.Rate(12,56)C.Rate 12,56 D.以上A和C正確
97.以下程序的作用是單擊Check1檢查框?qū)⑹沟肨ext1文本框的字體在”加粗“和”常規(guī)“之間進(jìn)行切換。
Private Sub Check1_Click()Text1.FontItalic = Not Text1.FontItalic End Sub 98.窗體中有一個名稱為Slider1的可選擇性刻度滑塊控件,要設(shè)置它的如下屬性值,可以編寫程序()(單)(1)Slider控件的滑塊處于最小位置時值為8(2)Slider控件的滑塊處于最大位置時值為72(3)單擊Slider控件兩端箭頭時,滑塊的增量值為2(4)單擊Slider控件的空白處時,滑塊的增量值為8 A.Slider1.Min = 8: Slider1.Max = 72:
Slider1.SmallChange =2: Slider1.LargeChange = 8 B.Slider1.Min = 2: Slider1.Max = 8:
Slider1.SmallChange = 72: Slider1.LargeChange = 8 C.Slider1.Min = 8: Slider1.Max = 72:
Slider1.SmallChange = 8: Slider1.LargeChange = 2 D.Slider1.Min = 72: Slider1.Max = 8:
Slider1.SmallChange = 2:
Slider1.LargeChange = 8 99.以下能判斷指針是否指向文件尾的函數(shù)是()(單)A.BOF B.LOC C.LOF D.EOF 00.窗體的過程Form_MouseDown(Button As Integer, Shift As Integer, X As Single, YAs Single),有4個參數(shù),關(guān)于這些參數(shù),正確的描述是()(單)A.通過Button參數(shù)判定當(dāng)前按下的是鍵盤上哪一個鍵 B.Shift參數(shù)只能用來確定是否按下Shift鍵
C.Shift參數(shù)只能用來確定是否按下Alt和Ctrl鍵 D.參數(shù)x,y用來設(shè)置鼠標(biāo)當(dāng)前位置的坐標(biāo)
01.設(shè)組合框Combo1中有3個項目,則以下能刪除最后一項的語句是()(單)A.Combo1.RemoveItem Text B.Combo1.RemoveItem 2 C.Combo1.RemoveItem 3 D.Combo1.RemoveItem Combo1.Listcount
1-10ADADA ABADA 11-20CCCDA AACBC 21-30ACDBB CDCCC 31-40ABDAB fontname BAAC 41-45AAC RND*101+100或100+RND*101或RND()*101+100或100+RND()*101 B 46-50CACBB 51-55DBBAA 56-60CDBBA 61-65BCDDD 66Autosize 67Multiline 68Text1 669loadpicture(”pic2.bmp")70Stretch 71Picture 72Interval 73Enabled 74 001.4 75 1.7 76【標(biāo)準(zhǔn)】77VB 78frm 79B 80cos(2*(c+d))81 2*a*(7+b)82【雙引號】83D 84D 85D 86<> 87【i】88x+y+z=100 89RND*101+100或100+RND*101或RND()*101+100或100+RND()*101 90B 91-95BBCDV 96-00BVADD 01B 13
第四篇:算法與程序設(shè)計
《算法與程序設(shè)計》教學(xué)中實施研究性學(xué)習(xí)探步
作者:趙濮民
摘要:研究性學(xué)習(xí)是教育科研領(lǐng)域中一個嶄新的課題。信息技術(shù)教學(xué)作為以培養(yǎng)創(chuàng)新精神、研究能力和實踐能力為目標(biāo)取向的必修課程,它強調(diào)讓學(xué)生通過研究性學(xué)習(xí),提出問題,收集材料,對研究性課題進(jìn)行探索、分析、研究,最后基于問題解決模式,在實踐操作中培養(yǎng)學(xué)生科學(xué)的態(tài)度和價值觀以及創(chuàng)新精神、創(chuàng)新思維、創(chuàng)造能力,并學(xué)會解決生活中與信息技術(shù)學(xué)習(xí)有關(guān)的實際問題。職業(yè)學(xué)校的學(xué)生,不僅應(yīng)具有獨立接受知識的能力,更應(yīng)具有獨立探索知識的能力,由“研究性學(xué)習(xí)”補充原有的“接受式學(xué)習(xí)”,使學(xué)習(xí)方式更趨完善,只有當(dāng)這兩種學(xué)習(xí)方式結(jié)合起來,優(yōu)勢互補,才能使基礎(chǔ)教育適應(yīng)時代對人才培養(yǎng)的要求。
關(guān)鍵詞:程序設(shè)計;研究性學(xué)習(xí);求真;求全;求變;求新;優(yōu)勢互補
《算法與程序設(shè)計》是職業(yè)學(xué)校信息技術(shù)教學(xué)中的一個重點,也是難點。傳統(tǒng)的程序設(shè)計教學(xué)以老師講授型為主,由于算法與程序設(shè)計的內(nèi)容邏輯性強,普遍認(rèn)為在程序設(shè)計教學(xué)中難以實施研究性學(xué)習(xí)。
研究性學(xué)習(xí)是以“培養(yǎng)學(xué)生具有永不滿足、追求卓越的態(tài)度,培養(yǎng)學(xué)生發(fā)現(xiàn)問題、提出問題、從而解決問題的能力”為基本目標(biāo),以學(xué)生從學(xué)習(xí)中獲得作品設(shè)計與制作方法的困惑為方向,以在提出問題和解決問題的全過程中學(xué)習(xí)到算法與程序設(shè)計為學(xué)習(xí)方法的課程。經(jīng)過反復(fù)研究,我們認(rèn)為研究性學(xué)習(xí)可以應(yīng)用于程序設(shè)計教學(xué)中。實施研究性學(xué)習(xí)的關(guān)鍵是要確定一個目標(biāo),要鼓勵學(xué)生主動地發(fā)現(xiàn)問題,并且通過探究或?qū)嵺`活動去試圖解決問題。在課題研究的過程中采用分組交流討論、查閱資料、協(xié)作探究、歸納總結(jié)等方式,一步步引領(lǐng)學(xué)生深刻掌握算法與程序設(shè)計的精髓。
一、通過研究性學(xué)習(xí),重構(gòu)算法知識體系,要求真 研究性學(xué)習(xí)是學(xué)生在老師的指導(dǎo)下,結(jié)合真實生活,選定主題,然后搜集相關(guān)材料,對材料進(jìn)行歸納、加工處理、分析、總結(jié),得到相應(yīng)結(jié)論的學(xué)習(xí)活動。在《算法與程序設(shè)計》教學(xué)中,根據(jù)教學(xué)內(nèi)容,經(jīng)過反復(fù)研究,確定了研究主題《搜索算法的應(yīng)用研究》和《動態(tài)規(guī)劃算法的解題應(yīng)用研究》,并根據(jù)學(xué)生的自愿報名成立了兩個研究小組。然后各小組根據(jù)自己研究的算法,重新整理相應(yīng)的知識,對知識進(jìn)行認(rèn)知、歸納、總結(jié)。如《搜索算法的應(yīng)用研究》小組,對搜索算法從以下幾方面進(jìn)行整理:
1、搜索算法的算法思想、分類;
2、深度優(yōu)先搜索的算法思想與算法結(jié)構(gòu);
3、廣度優(yōu)先搜索的算法思想與算法結(jié)構(gòu);
4、深度優(yōu)先搜索的優(yōu)先策略;
5、廣度優(yōu)先搜索的優(yōu)化策略;
6、深度優(yōu)先搜索與廣度優(yōu)先搜索的異同。學(xué)生通過對搜索算法知識進(jìn)行整理、分類、小結(jié),加深了對搜索算法的理性理解與感性認(rèn)知。
二、通過研究性學(xué)習(xí),同學(xué)之間取長補短,要求全
每個學(xué)生都有所長,也有所短,研究性學(xué)習(xí)一個重要的特點就是:分工合作,共同討論,共同提高,使參與的學(xué)生全面發(fā)展。我們的“搜索算法的應(yīng)用研究”小組共有五個成員,根椐學(xué)生的特點、特長,對他們進(jìn)行分工,每位學(xué)生研究上述其中一個問題,然后整個小組一起討論,每位學(xué)生介紹自己的研究情況、研究成果,然后其他同學(xué)進(jìn)行補充,發(fā)表自己的見解,這樣每個同學(xué)都使自己的研究內(nèi)容得到補充,同時也學(xué)習(xí)到了其他同學(xué)研究方面的知識,可以取長補短,共同提高,得到全面發(fā)展。
三、通過研究性學(xué)習(xí),總結(jié)算法的應(yīng)用規(guī)律,要求變
研究性學(xué)習(xí)的目的,是要求學(xué)生搜集與主題有關(guān)的資料,歸納整理相關(guān)資料,根據(jù)相關(guān)材料和知識,對主題進(jìn)行研究,提出自己的觀點或結(jié)論。我們在程序設(shè)計教學(xué)中進(jìn)行算法專題研究也是這樣,除要求學(xué)生歸納、整理專題算法知識外,還要總結(jié)出算法的應(yīng)用規(guī)律、應(yīng)用算法解題的步驟和算法的框架,能根據(jù)實際情況,隨機應(yīng)變。如在“動態(tài)規(guī)劃的應(yīng)用研究”中,學(xué)生總結(jié)出:動規(guī)劃是解符合“無后效性原則”的最優(yōu)問題的一種算法思想;用動態(tài)規(guī)劃解題的一般步驟是:(1)判斷題目是否為求最優(yōu)問題,是否符合“無后效性原則”;(2)確定如果劃分階段;(3)確定每個階段有幾種狀態(tài);(4)找出狀態(tài)轉(zhuǎn)移方程和邊界條件;(5)用算法語言實現(xiàn)算法過程。又如在“搜索算法的應(yīng)用研究”中,研究小組的同學(xué)總結(jié)出:(1)廣度優(yōu)先搜索算法通常應(yīng)用于解最少步數(shù)問題,而深度優(yōu)先搜索算法則通常用來解所有路徑問題;(2)深度優(yōu)先搜索和廣度優(yōu)先搜索都是搜索算法,前者時間復(fù)雜度較大,而后者則占用的內(nèi)存較大;(3)深度優(yōu)先搜索在實現(xiàn)時用遞歸或用堆棧來實現(xiàn),而廣度優(yōu)先搜索是用隊列來實現(xiàn),實現(xiàn)兩種算法所用的數(shù)據(jù)結(jié)構(gòu)不同;(4)深度優(yōu)先搜索和廣度優(yōu)先搜索都是搜索算法,但兩者的算法結(jié)構(gòu)有較大的不同。學(xué)生通過自己對算法應(yīng)用規(guī)律的總結(jié),對算法的應(yīng)用得到升華,進(jìn)一步提高算法的應(yīng)用能力和程序設(shè)計能力。
四、通過研究性學(xué)習(xí),提高分析、歸納和綜合能力,要求新
對算法的專題研究,不僅要對算法理論進(jìn)行總結(jié),算法應(yīng)用的研究也是很重要的一方面,通過算法的解題應(yīng)用,既提高了學(xué)生分析問題的能力,也加深了學(xué)生對算法的理解,提高了學(xué)生的算法應(yīng)用能力,進(jìn)而得到對學(xué)生創(chuàng)新能力的培養(yǎng)。另外,我們在算法研究過程中,要求學(xué)生透切理解算法內(nèi)容,用算法語言準(zhǔn)確描述算法,通過這種途徑,進(jìn)一步加深學(xué)生對算法的理解,同時也提高了學(xué)生的算法表達(dá)能力和歸納、總結(jié)的能力。
通過對算法進(jìn)行專題研究,可以進(jìn)一步加深學(xué)生對算法知識的理解,也可以提高學(xué)生的算法應(yīng)用能力和程序設(shè)計能力。實踐告訴我們:在整個研究過程中要注意以下幾個問題:
1、課題不宜太大。研究課題的確定是研究性學(xué)習(xí)實施過程中重要的一環(huán),課題選擇恰當(dāng)與否,直接關(guān)系到整個課題研究的成敗。在程序設(shè)計教學(xué)中進(jìn)行研究性學(xué)習(xí)活動,選題要遵循下面的原則:(1)課題的范圍不宜太大;(2)有一定的應(yīng)用價值;(3)結(jié)合學(xué)生的實際。一個好的開始是成功的一半,在研究性學(xué)習(xí)活動中也是如此。
2、要理論研究與算法應(yīng)用相結(jié)合。對算法的專題研究,算法應(yīng)用是重點。在算法知識歸納總結(jié)的基礎(chǔ)上,重點應(yīng)研究算法應(yīng)用的一般規(guī)律、算法結(jié)構(gòu)、應(yīng)用算法解題的一般步驟等。不應(yīng)該只是對算法理論的空洞論述,否則效果不好、意義也不大。
3、充分發(fā)揮教師的引導(dǎo)作用、學(xué)生的主體作用。在算法研究活動中,應(yīng)充分發(fā)揮教師的引導(dǎo)和指導(dǎo)作用,既不能放任自由,也不能包辦代替,要充分發(fā)揮學(xué)生的主體作用。當(dāng)學(xué)生遇到問題和困難時,老師應(yīng)當(dāng)引導(dǎo)和啟發(fā)學(xué)生,讓學(xué)生去探索和研究,而不是直接告訴學(xué)生答案,老師始終是學(xué)生的引導(dǎo)者,學(xué)生是真正的參與者,使學(xué)生通過算法研究,加深對算法的理解,提高算法應(yīng)用能力和程序設(shè)計能力。
職業(yè)學(xué)校的學(xué)生,不僅應(yīng)具有獨立接受知識的能力,更應(yīng)具有獨立探索知識的能力,由“研究性學(xué)習(xí)”補充原有的“接受式學(xué)習(xí)”,使學(xué)習(xí)方式更趨完善,只有當(dāng)這兩種學(xué)習(xí)方式結(jié)合起來,優(yōu)勢互補,才能使基礎(chǔ)教育適應(yīng)時代對人才培養(yǎng)的要求。
第五篇:算法與程序設(shè)計教案
第一課 初識算法與程序設(shè)計
一、教學(xué)目標(biāo)
1、知識與技能
(1)理解算法的概念,培養(yǎng)學(xué)生自我探索信息,高效獲取信息的能力;
(2)能初步利用算法解決簡單的問題,培養(yǎng)學(xué)生的理論聯(lián)系實際能力和動手操作能力。
2、情感、態(tài)度、價值觀
學(xué)生在學(xué)習(xí)過程中,通過親身經(jīng)歷體驗獲得對此算法的感性認(rèn)識,培養(yǎng)學(xué)生自我獲取信息、分析評價信息、、表達(dá)呈現(xiàn)信息的能力,進(jìn)一步提高其信息素養(yǎng)。
二、教學(xué)重點難點
重點:算法概念的理解
難點:如何科學(xué)合理的選擇和設(shè)計算法。
三、教學(xué)策略與手段
以趣味性問題設(shè)置情境,激發(fā)學(xué)生探索解決問題的興趣,與學(xué)生進(jìn)行互動探討,通過Flash演示材料,比較直觀地把抽象的問題簡單化,使學(xué)生的思考逐步深入,從而總結(jié)出算法的概念,學(xué)會如何設(shè)計和選擇算法,培養(yǎng)學(xué)生自主探究學(xué)習(xí)的能力。
四、教學(xué)過程(1課時)
(一)我們來共同尋找下面一些生活中比較現(xiàn)實的問題的解決方法。【問題一】天下真的有“不要錢的午餐”嗎?
某一餐館門口海報上寫著“不要錢的午餐”,規(guī)則如下:在三個月內(nèi),來賓必須湊夠五個人,五人每次來就餐必須按照不同的順序坐,直到把所有可能的順序都坐一遍,以后來吃飯就可永遠(yuǎn)免費”。于是有人想,這太容易了,每人每次坐不同的位置,吃五次不就行了?于是他就叫上自己的朋友參加這項活動,可是,吃了十次之后,還沒有吃上免費午餐,這是怎么回事呢?
學(xué)生們感覺非常有意思,很快以小組為單位進(jìn)行熱烈的討論并得出了破解問題的步驟:①第一個座位5個人都有坐的機會②第二個座位只有4個人中的任一個有坐的機會(一個人不能同時坐兩個座位)③第三個座位只有3個人中的任一個有坐的機會④第四個座位只有2個人中的任一個有坐的機會⑤第五個座位只有1個人有坐的機會⑥計算:5×4×3×2×1=120⑦得出結(jié)論:需要吃120次才有可能吃上免費午餐。
【問題二】有三個和尚和三個妖怪過河,只有一條能裝下兩個人的船,在河的任何一方或者船上,如果妖怪的人數(shù)大于和尚的人數(shù),那么和尚就會有被吃掉的危險。你能不能找出一種安全的渡河方法呢?請寫一寫你的渡河方案。學(xué)生:學(xué)生討論回答?!颊故静襟E〗
①兩個妖怪先過河,一個妖怪回來; ②再兩個妖怪過河,一個妖怪回來; ③兩個和尚過河,一個妖怪和一個和尚回來; ④兩個和尚過河,一個妖怪回來; ⑤兩個妖怪過河,一個妖怪回來; ⑥兩個妖怪過河。
【Flash動畫展示】通過討論和動畫展示,我們可以知道,計算機解決問題和人解決問題一樣需要有清晰的解題步驟。算法就是解決問題的程序或步驟。
(二)【課件展示】算法的概念:
1、廣義的算法是指完成某項工作的方法和步驟,在我們?nèi)粘I钪幸步?jīng)常使用算法,只是沒意識到罷了。如:洗衣機的使用說明書是操作洗衣機的算法,菜譜是做菜的算法等等。
2、在數(shù)學(xué)中,現(xiàn)代意義的算法是指可以用計算機來解決的某一類問題的程序和步驟,這些程序或步驟必須是明確和有效的,而且能夠在有限步之內(nèi)完成。
【小試身手】按照這樣的理解,我們可以設(shè)計出很多由具體數(shù)學(xué)問題解決一類數(shù)學(xué)問題的算
法.下面看一個例子:(要求學(xué)生自己考慮并寫出具體的算法)
雞兔同籠問題。一個籠子里有雞和兔,現(xiàn)在只知道里面一共有17個頭,48只腳,雞和兔各有多少只?試設(shè)計一個求解的算法。
【設(shè)計意圖】求解雞兔的問題簡單直觀,卻包含著深刻的算法思想。應(yīng)用解二元一次方程組的方法來求解雞兔同籠問題。
第一步:設(shè)有小雞x只,小兔y只,則有
第二步:將方程組中的第一個方程兩邊乘-2加到第二個方程中去,得到,得到y(tǒng)=7; 第三步:將y=7代入(1)得x=10。
【變一變】在籠中有雞、兔若干,已知有頭a個,有腳b只,求各有多少只雞和兔。
【師生合作】老師帶領(lǐng)學(xué)生共同書寫規(guī)范的算法的具體步驟,最后引出算法使用的范圍:能解決一類問題,并且能重復(fù)使用。
(三)【課件展示】算法的基本特征
①有窮性 ②確定性 ③不唯一性 ④有效性(邏輯性)
1、有窮性:一個算法應(yīng)該包含有限個操作步驟,而不能是無限的。
2、確定性:算法的每個步驟都應(yīng)該是明確無誤的,不能含義模糊,使執(zhí)行者無所適從。
3、有零個或者多個輸入,有一個或者多個輸出
4、有效性:算法中的每一步都應(yīng)該能有效地執(zhí)行,執(zhí)行算法最后應(yīng)該能得到確定的結(jié)果。
【教學(xué)總結(jié)】
1、本節(jié)課通過一些生活中看似簡單問題的解決方法和步驟,使學(xué)生比較輕松的接受了生活算法的概念,進(jìn)一步理解了計算機算法的概念。
2、課堂教學(xué)的效益取決于學(xué)生對所學(xué)知識理解了多少,能否用所學(xué)知識來解決一些實際問題。本節(jié)課的設(shè)計突出講與練的結(jié)合,培養(yǎng)學(xué)生的動手能力,并且引出學(xué)生對下一節(jié)課的內(nèi)容的思考,比較順利的完成了本節(jié)課的教學(xué)任務(wù)。
3、如何優(yōu)化算法,找到算法的形式和用算法解決問題的效益的最佳結(jié)合點,還尚需探討。