第一篇:vb大題上機(jī)總結(jié)
真?vb大題?正式版1.0
**********************************************************************
在考生文件夾下有一個(gè)工程文件sj44.vbp(相應(yīng)的窗體文件名為sj44.frm),其功能是通過(guò)調(diào)用過(guò)程Sort將數(shù)組按降序排序,請(qǐng)裝入該文件。程序
運(yùn)行后,在四個(gè)文本框中各輸入一個(gè)整數(shù)(如圖1所示),然后單擊命令
按鈕,即可使數(shù)組按降序排序,并在文本框中顯示出來(lái)(如圖2所示)。
這個(gè)程序不完整,請(qǐng)把它補(bǔ)充完整,并能正確運(yùn)行。
要求:
去掉程序中的注釋符,把程序中的?改為正確的內(nèi)容,使其實(shí)現(xiàn)上述功
能,但不能修改程序中的其他部分。最后把修改后的文件按原文件名存
盤。
圖1
圖2 本題的考查的是數(shù)組的應(yīng)用,通過(guò)調(diào)用過(guò)程Sort將數(shù)組按降序排序,Ubound()函數(shù)是用來(lái)獲得數(shù)組的上界,Lbound()函數(shù)是獲得數(shù)組的下界,打開工程文件sjt4.vbp和相應(yīng)的窗體文件名為sjt3.frm,在代碼窗口中補(bǔ)充如下代碼:
Private Sub Sort(a()As Integer)Dim Start As Integer, Finish As Integer Dim i As Integer, j As Integer, t As Integer Start = LBound(a)Finish = UBound(a)For i = Finish To 2 Step-1 For j = 1 To Finishlowerbound+1)* Rnd + lowerbound)這里,upperbound是隨機(jī)整數(shù)范圍的上限,而lowerbound則是隨機(jī)整數(shù)范圍的下限。修改后的主要代碼如下:
Private Sub Command1_Click()Text1.Text = “": Text2.Text = ”“ For i = 1 To 10 a(i)= Fix(Rnd * 99 + 1)For j = 1 To i1 Exit For End If(避免取相同的值)
Next j Next i For i = 1 To 10 Text1.Text = Text1.Text + Str(a(i))+ Space(2)(隔兩個(gè)空格輸出下一個(gè))Next i End Sub
Private Sub Command2_Click()Dim num As Integer, i As Integer num = InputBox(”請(qǐng)輸入待查找的數(shù)“)For i = 1 To 10 If a(i)= num Then
盜版必究,版權(quán)所有。------vb作戰(zhàn)小隊(duì)
Text2.Text = Str(num)+ ”是數(shù)組中的第“ + Str(i)+ ”個(gè)值“ Exit For End If Next i If i > 10 Then Text2.Text = Str(num)+ ”不存在于數(shù)組中“ End If End Sub 按要求保存文件即完成本題?!?/p>
在名稱為Form1的窗體上有三個(gè)Label控件和兩個(gè)名稱分別為COMSTART、COMEXIT,標(biāo)題分別為”開始“、”退出“的命令按鈕。編寫函數(shù)ITEM(A,N)其功能是由數(shù)字A組成的不多于N位數(shù)的整數(shù),并利用該函數(shù)求8+88+888+8888的和,結(jié)果寫入考生文件夾下的wy36.dat文件中。執(zhí)行完畢”開始“按鈕變成”完成“,且無(wú)效(變灰)。
【語(yǔ)法
[Public | Private | Friend] [Static] Function name [(arglist)] [As type] [Statements] [name = expression] [Exit Function] [statements] [name = expression] End Function聲明Function過(guò)程的名稱,參數(shù)以及構(gòu)成其主體的代碼。】
在名稱為Form1的窗體上有五個(gè)Label控件和兩個(gè)命令按鈕,數(shù)據(jù)文件stud1.dat,存放考生的考號(hào)、姓名、成績(jī)。1)自定義一個(gè)數(shù)據(jù)類型stu,字符型數(shù)據(jù)定長(zhǎng)為10。
2)按”開始“按鈕后,能從考生文件夾下的stud1.dat 中讀出所有數(shù)據(jù)并寫入考生文件夾下的stud.dat文件中; 3)執(zhí)行完畢,”開始“按鈕變成”完成“,且無(wú)效(變灰);
第6 題.在名稱為Form1的窗體上畫二個(gè)文本框,名稱分別為T1、T2,初始情況下都沒(méi)有內(nèi)容。請(qǐng)編寫適當(dāng)?shù)氖录^(guò)程,使得在運(yùn)行時(shí),在T1中輸入的任何字符,立即顯示在T2中(如圖所示)。程序中不得使用任何變量。*注意:
存盤時(shí)必須存放在考生文件夾下,工程文件名為sjt5.vbp,窗體文件名為sjt5.frm。
Private Sub T1_Change()T2.Text = T1.Text End Sub 按要求保存文件即完成本題。
真?vb大題?正式版1.0
第30題在名稱為Form1的窗體上用名稱為shape1的形狀控件畫一個(gè)長(zhǎng)、寬都為1200 的正方形。請(qǐng)?jiān)O(shè)置適當(dāng)?shù)膶傩詽M足以下要求:
1)窗體的標(biāo)題為”正方形“,窗體的最小化按鈕不可用;
2)正方形的邊框?yàn)樘摼€(線型不限)。運(yùn)行后的窗體如圖所示。
注意:
存盤時(shí)必須存放在考生文件夾下,工程文件名為sj116.vbp,窗體文件名
為sj116.frm。
【本題主要考查了形狀控件的Width、Height和BorderStyle屬性,同時(shí)考查了窗體的Caption和MinButton屬性。Width:設(shè)置對(duì)象的寬度。Height:設(shè)置對(duì)象的高。BackStyle:設(shè)置邊框類型。Caption:設(shè)置標(biāo)題。
MinButton:設(shè)置窗體最小化按鈕是否可用。本題各控件屬性設(shè)置如下: 控件名 屬性 屬性值 Shape1 Width 1200 Shape1 Height 1200 Shape1 BackStyle 2-Dash Form1 Caption 正方形 Form1 MinButton False】
第9題.在考生文件夾下有一個(gè)工程文件sj83.vbp,相應(yīng)的窗體文件為sj83.frm。在窗體上有一個(gè)命令按鈕,其名稱為Command1,標(biāo)題為”計(jì)算并輸出“。程序運(yùn)行后,如果單擊命令按鈕,程序?qū)⒂?jì)算500以內(nèi)兩個(gè)數(shù)之間(包括開頭和結(jié)尾的數(shù))所有連續(xù)數(shù)的和為1250的正整數(shù),并在窗體上顯示出來(lái)。這樣的數(shù)有多組,程序輸出每組開頭和結(jié)尾的正整數(shù),并用”~“連接起來(lái),如圖所示。該程序不完整,請(qǐng)把它補(bǔ)充完整。
Private Sub Command1_Click()Dim i As Integer, j As Integer, iSum As Integer Print ”連續(xù)和為1250的正整數(shù)是:“ For i = 1 To 500 iSum = 0 For j = i To 500 iSum = j + iSum If iSum >= 1250 Then Exit For Next If iSum = 1250 Then Print i;” ~ ";j End If Next End Sub
第二篇:vb上機(jī)心得體會(huì)
心得體會(huì):
剛開始學(xué)習(xí)vb的時(shí)候,我就覺得大一的計(jì)算機(jī)基礎(chǔ)根本不值一提,難度相去甚遠(yuǎn)。我問(wèn)過(guò)很多以前的同學(xué),他們都說(shuō)vb是編程語(yǔ)言中最簡(jiǎn)單的,但是在這次上機(jī)實(shí)習(xí)過(guò)程中,我發(fā)現(xiàn)要完成學(xué)生成績(jī)管理系統(tǒng)實(shí)在有很大難度。平時(shí)看課本的時(shí)候,覺得還能夠理解,看得懂,然而“紙上得來(lái)終覺淺”,一旦自己調(diào)試程序,總會(huì)犯很多錯(cuò)誤,如前面說(shuō)的“文件未找到”“下標(biāo)越界”等等,都是平時(shí)沒(méi)有機(jī)會(huì)解決和一些曾經(jīng)被自己忽視的問(wèn)題。有時(shí)候,為了找到代碼中錯(cuò)誤或不符合要求的地方,我不得不一遍又一遍地仔細(xì)檢查程序,甚至標(biāo)點(diǎn)符號(hào)都不能放過(guò)。細(xì)節(jié)決定成敗,一個(gè)小小的分號(hào)也會(huì)起著扭轉(zhuǎn)乾坤的作用。
在實(shí)習(xí)之前,我妄想從網(wǎng)站上下載一個(gè)或者請(qǐng)論壇上的好友幫忙,后來(lái)我發(fā)現(xiàn)這條路走不通,他們從來(lái)都不給別人提供實(shí)質(zhì)性的幫助,只是象征性地說(shuō):“不會(huì)問(wèn)老師?!庇谑俏掖蛳诉@個(gè)念頭,開始自己動(dòng)手做。
當(dāng)我無(wú)數(shù)次調(diào)試總算讀出文件的時(shí)候,那種高興勁可想而知。我慢慢覺得,其實(shí)自己調(diào)試程序蠻有意思的。既彌補(bǔ)了在vb學(xué)習(xí)中的漏洞,還學(xué)到了新內(nèi)容,積累了一定的實(shí)戰(zhàn)經(jīng)驗(yàn),對(duì)以后的期末考試和等級(jí)考試起到了相當(dāng)大的促進(jìn)作用。
實(shí)習(xí)過(guò)程中,多虧指導(dǎo)老師幫助我找出錯(cuò)誤的地方。如果不是他們的細(xì)心講解,我很難完成這次實(shí)習(xí)任務(wù)。當(dāng)然,我在編程方面還有很大不足,今后我定會(huì)加倍努力,為等級(jí)考試的順利通過(guò)打下牢固的基礎(chǔ)。
第三篇:個(gè)人vb上機(jī)考試總結(jié)
1.Option Base 1
‘下標(biāo)從1開始 Dim a(100)As Integer
‘全局變量 Private Sub Command1_Click()Open “in.txt” For Input As 1
‘讀入1號(hào)文件
For i = 1 To 100
Input #1, a(i)
‘100個(gè)數(shù)一次讀入
Next i Close 1 End Sub
Private Sub Command2_Click()Dim s As Integer s = 0 For i = 1 To 100
If a(i)>= 400 And a(i)< 800 Then
s = s + a(i)
‘400到800之間的數(shù)字相加
End If Next i Text1 = s putdata s
‘將結(jié)果存入考生文件夾中 End Sub 2.這個(gè)題很簡(jiǎn)單,回顧一下知識(shí)
Private Function fun(x As Integer)As Long Dim sum As Long sum = 1 For i = 1 To x
sum = sum * i Next i fun = sum End Function Private Sub Command1_Click()Dim a As Integer Dim s As Long a = InputBox(“請(qǐng)輸入”)s = fun(a)Text1 = s putdata “out.txt”, Text1 End Sub 3.調(diào)用標(biāo)準(zhǔn)模塊中isprime函數(shù)判斷是否為素?cái)?shù),求100-200間素?cái)?shù)的和 Private Sub Command1_Click()Dim i As Integer Dim s As Integer For i = 100 To 200
‘從100 到200 If isprime(i)= True Then
‘如果為素?cái)?shù)則相加
s = s + i End If Next i Text1 = s putdata “out.txt”, Text1
‘查看代碼確定變量個(gè)數(shù)End Sub 打開標(biāo)準(zhǔn)模塊的方法
工程資源管理器----form1----右擊----添加----添加模塊 4.8+88+888+8888 Private Sub Form_Click()Dim a As Integer, n As Integer, j As Integer, sum As Single a = 8 n = 4 For j = 1 To 4
sum = sum + Item(a, n)Next j Print “sum:”;sum End Sub Function item(a, k)Dim p As String, q As String, s As Single Dim k As Integer, i As Single p = “" For i = 1 To k
q$ = Str(k)
p$ = p$ + q$ Next i s = Val(p$)item = s End Function
Private Sub Form_Click()Dim a As Integer, n As Integer, j As Integer, sum As Single a = 8 n = 4 For j = n To 1 Step-1
If j = n Then
sum = item(a, j)
Else
sum = sumhscroll.Value
‘用滾動(dòng)條控制速度 End Sub Private Sub Timer1_Timer()Static i As Integer If i = 0 Then Picture1.Picture = LoadPicture(”2.ico“)
‘隨時(shí)間變化,圖片變化
i = 1 Else Picture1.Picture = LoadPicture(”1.ico“)i = 0 End If End Sub 6.-2.-,73,82,-76,-1,24,321,-25,89,-20 打印其中的每個(gè)負(fù)數(shù)及計(jì)算并輸出正數(shù)及負(fù)數(shù)的和 Private Sub Form_Click()Dim num As Integer negativesum = 0: positivesum = 0 For i = 1 To 10 num = InputBox(”enter data:“)
‘從鍵盤中輸入10個(gè)數(shù)
If num < 0 Then
Print num
negativesum = negativesum + num Else
positivesum = positivesum + num
End If Next i Print Print ”negativesum=“;negativesum Print ”positivesum=“;positivesum End Sub 7.a aa aaa aaaa bbbb bbb bb b
Private Sub Command1_Click()Dim a(4)As String, b(4)As String Dim k As Integer, l As Integer myfile = App.Path & ”“ & ”picture.dat“ Open myfile For Output As #1 For k = 1 To 4
a(k)= String(2 * k1, ”b“)Next k For k = 1 To 4
Print #1, a(k)Next k
‘若為負(fù)數(shù)則輸出再計(jì)算其和
‘計(jì)算正數(shù)和 string函數(shù)
‘ For k = 4 To 1 Step-1
‘步長(zhǎng)一定要寫
Print #1, b(k)Next k Close #1 End Sub 8.單擊command1將list1中全部選中 單機(jī)command2 全部寫入“output.txt”中(multiselect=1)Private Sub Command1_Click()Dim i As Integer For i = 0 To List1.ListCount – 1
‘從下表為0的列表到最后一個(gè)選中都變?yōu)檎?/p>
List1.Selected = True Next i End Sub
Private Sub Command2_Click()Dim i As Integer Open ”out7.txt“ For Output As #1
‘先打開文件再逐個(gè)寫入文件中 For i = 0 To List1.ListCount500
Image1.Width = Image1.Width-500 End If End Sub 11.Private Sub Command1_Click()Text1 = InputBox(”請(qǐng)輸入要添加的項(xiàng)目“)
‘從鍵盤輸入到文本框再添加到列表框中 List1.AddItem Text1 End Sub
Private Sub Command2_Click()Text1 = InputBox(”請(qǐng)輸入要?jiǎng)h除的項(xiàng)目“)For i = 0 To List1.ListCount – 1
‘從第一個(gè)到最后一個(gè)只要與text1中相同則刪除
If List1.List(i)= Text1.Text Then
List1.RemoveItem i
End If Next i End Sub 12 Private Sub Command1_Click()Dim chr As String, number As Integer, cp As Integer, lp As Integer Dim others myfile1 = App.Path & ”“ & ”prog8a.dat“
‘路徑
myfile2 = App.Path & ”“ & ”prog8b.dat“ Open myfile1 For Input As #1
打開已有文件myfile1,創(chuàng)建myfile2分別作一號(hào)和二號(hào)文件 Open myfile2 For Output As #2
While Not Eof(1)
Input #1, chr
If Asc(chr)>= 48 And Asc(chr)<= 57 Then
number = number + 1
‘用asc碼來(lái)識(shí)別性質(zhì)
ElseIf Asc(chr)>= 65 And Asc(chr)<= 90 Then
cp = cp + 1
ElseIf Asc(chr)>= 97 And Asc(chr)<= 122 Then
lp = lp + 1
Else
others = others + 1
End If Wend Print #2, number, cp, lp.others
Close Command1.Caption = ”完成" Command1.Enabled = False End Sub
‘把得到的結(jié)果分別寫入到二號(hào)文件中
第四篇:VB上機(jī)試題及答案
上機(jī)操作練習(xí)題
1.某數(shù)組有20個(gè)元素,其值為隨機(jī)產(chǎn)生的兩位整數(shù)?,F(xiàn)要求將前10個(gè)元素與后10個(gè)元素對(duì)換。即第1個(gè)元素與第20個(gè)元素互換,第2個(gè)數(shù)與第19個(gè)元素互換,…,第10個(gè)元素與第11個(gè)元素互換。在窗體上輸出數(shù)組原來(lái)各元素的值與對(duì)換后各元素的值。
Option explicit Dim a(1 to 20)as integer, I as integer, j as integer, t as integer Private Sub Form_Load()Show Print “原始數(shù)組是:” Randomize For i = 1 To 20
a(i)= Int(Rnd * 90)+ 10
Print a(i);If i Mod 10 = 0 Then Print Next i Print Print “現(xiàn)在數(shù)組是:” For i = 1 To 10
j = 211
a(k)= a(k + 1)
Next k
ReDim Preserve a(UBound(a)1 End If i = i + 1 Loop While(i <= UBound(a))If flag = False Then MsgBox n & “不在該數(shù)組中” Else Print “刪除” & n & “后的數(shù)組是:” For i = 0 To UBound(a)Print a(i);Next i End If End Sub 3.?dāng)?shù)組a中存放著升序排列的數(shù)據(jù),使用array賦值,將inputbox輸入的新數(shù)插入到數(shù)組中,插入后數(shù)組仍有序。
注意:要求利用動(dòng)態(tài)數(shù)組,能夠?qū)崿F(xiàn)多次插入 Private Sub Form_Load()Show n = 8: ReDim a(n)a = Array(5, 15, 23, 52, 68, 88, 90, 99)n = n + 1: ReDim Preserve a(n)m = InputBox(“請(qǐng)輸入要插入的數(shù)據(jù):”)For i = 1 To n1)Next k a(k)= m For i = 1 To n
Print a(i);Next i Print End Sub 4.6個(gè)評(píng)委為4位歌手打分,分?jǐn)?shù)介于1-100之間。去掉一個(gè)最高分,一個(gè)最低分,求出每位選手的最后得分。將4位歌手得分從高到低排列輸出,同時(shí)輸出該選手的編號(hào)。
如:
歌手3 95分 歌手 1 87分 歌手 4 80分 歌手 2 70分
/ 19
Option Base 1
Private Type geshou
xuhao As String
fenshu(6)As Integer
score As Integer
pingjun As Integer End Type Dim singer(1 To 4)As geshou Private Sub Command1_Click()For i = 1 To 4 For j = 1 To 6
singer(i).fenshu(j)= Int(Rnd * 100)
singer(i).xuhao = “歌手” & i Next Next Call paixu End Sub
Private Sub paixu()Dim p As geshou For i = 1 To 4
For j = 1 To 5
For k = j To 6
If singer(i).fenshu(j)> singer(i).fenshu(k)Then
t = singer(i).fenshu(j)
singer(i).fenshu(j)= singer(i).fenshu(k)
singer(i).fenshu(k)= t
End If
Next
Next Next For i = 1 To 4 For j = 2 To 5
singer(i).score = singer(i).score + singer(i).fenshu(j)Next singer(i).pingjun = singer(i).score / 4 Next
For i = 1 To 3 For j = i To 4
If singer(i).score < singer(j).score Then
p = singer(i): singer(i)= singer(j): singer(j)= p
End If Next
/ 19
Next For i = 1 To 4 Print singer(i).xuhao & “得分:” & singer(i).pingjun Next End Sub Private Sub Form_Load()End Sub 10個(gè)評(píng)委給10個(gè)選手打分 Private Sub Form_Load()Show n = UBound(b)For i = 1 To 10
For j = 1 To 10
a(i, j)= Val(InputBox(“請(qǐng)第” & j & “位評(píng)委給第” & i & “位選手打分:”))Next j Next i For i = 1 To 10
max = a(i, 1): sum = 0
min = a(i, 1): ave = 0
For j = 1 To 10
If a(i, j)> max Then max = a(i, j)
If a(i, j)< min Then min = a(i, j)
sum = sum + a(i, j)
Next j
ave =(summin)/(n1
For j = i + 1 To n
If b(i)< b(j)Then
t = b(i): b(i)= b(j): b(j)= t
End If
Next j Next i Print “選手的得分由高到低為:” For i = 1 To 10
Print b(i);Next i End Sub 5.編寫函數(shù)求一元二次方程ax2+bx+c=0的解。
注意:要求考慮方程有兩相等實(shí)根、兩不等實(shí)根和兩個(gè)虛根的情況。Dim a As Single, b As Single, c As Single Dim s As Single a = InputBox(“請(qǐng)輸入a”)
/ 19
b = InputBox(“請(qǐng)輸入b”)c = InputBox(“請(qǐng)輸入c”)s = b ^ 2Sqr(s))/ 2 * a End If End Sub 6.任意輸入一組字符,統(tǒng)計(jì)出大寫字母多少個(gè),小寫字母多少個(gè),數(shù)字多少個(gè)?要求用過(guò)程實(shí)現(xiàn)。
Call tongji(a, n, m, o)Print “數(shù)字:” & n & Chr(13)& “小寫:” & m & Chr(13)& “大寫:” & o End Sub Private Sub tongji(a As String, n As Integer, m As Integer, p As Integer)For i = 1 To Len(a)If Asc(Mid(a, i, 1))> 47 And Asc(Mid(a, i, 1))< 58 Then
n = n + 1 ElseIf Asc(Mid(a, i, 1))> 96 And Asc(Mid(a, i, 1))< 123 Then
m = m + 1 ElseIf Asc(Mid(a, i, 1))> 64 And Asc(Mid(a, i, 1))< 91 Then
p = p + 1 End If Next End Sub 7.隨機(jī)產(chǎn)生一個(gè)5*5的矩陣,將主對(duì)角線和次對(duì)角線元素都置為1,并求出矩陣的四周元素之和,顯示在列表框中。
Option Base 1 Private Sub Form_Load()Dim a(5, 5)As Integer Dim s As Integer For i = 1 To 5 For j = 1 To 5
If i = j Or i = 6Asc(Mid(s1, i, 1))+ 64)ElseIf Asc(Mid(s1, i, 1))< 123 And Asc(Mid(s1, i, 1))> 96 Then convert = convert & Chr(1235: g = e
For j = 1 To n
If j > i Then
a(i, j)= 0
Else
If i = j Then
a(i, j)= 1
Else
a(i, j)= a(i1, ji + 1);String(2 *(i1)/ 2 To 1 Step(-1)
c = c + 1
s = Chr(64 + ii + c + 1);String(2 *(j1)/ 2 Else
x = x / 2 End If i = i + 1 Loop
ReDim Preserve a(UBound(a))If y < 0 Then For i = 1 To UBound(a)convert = convert & a(i)Next convert = “-” & convert Else For i = 1 To UBound(a)
/ 19
convert = convert & a(i)Next End If
End Function Private Sub Command1_Click()Dim y As Integer Text1.Text = “" y = InputBox(”請(qǐng)輸入十進(jìn)制數(shù)字“)Text1.Text = convert(y)
End Sub
Private Sub Form_Load()
End Sub 14.輸入一個(gè)整數(shù)N,產(chǎn)生N個(gè)隨機(jī)數(shù)(范圍1—10*N),然后采用任何2種算法實(shí)現(xiàn)由小到大的排序。將排序前后的數(shù)據(jù)顯示出來(lái)。
Option Base 1 Private Sub Command1_Click()Dim a()As Integer, n As Integer n = InputBox(”請(qǐng)輸入數(shù)列項(xiàng)數(shù)“)ReDim a(n)For i = 1 To n
a(i)= Int(Rnd * 10 * n + 1)
Print a(i);Next Print ReDim Preserve a(n)For i = 1 To n1 For j = 1 To n2)+ fact(n2 s = s1 + s2: t = s2: s2 = s: s1 = t Next End Function
Private Sub Command2_Click()n = InputBox(”請(qǐng)輸入n“)Print s(n)End Sub 17.編寫2個(gè)函數(shù),分別采用遞歸法和遞推法求斐波納契數(shù)列的第n個(gè)月的兔子數(shù),n使用inputbox輸入,調(diào)用函數(shù)的結(jié)果在窗體上顯示。Private Sub Command1_Click()List1.Clear Dim i As Integer For i = Val(Text1.Text)To Val(Text2.Text)If isprime(i)= True Then
List1.AddItem(i)
c = c + 1
If i Mod 10 = 9 Then
/ 19
List1.Selected(c1 If n Mod i = 0 Then
isprime = False
Exit For End If Next End Function 18 Dim sum As Long Private Sub Command1_Click()
Dim i As Integer, j As Integer, a(40)As Long
a(1)= 1
a(2)= 1
For i = 3 To 40
a(i)= a(i2)
Next i
sum = 0
For j = 1 To 40
sum = sum + a(j)
Next j End Sub
Private Sub Command2_Click()
Open ”out18.txt“ For Output As #1
Print #1, ”數(shù)列1,1,2,3,5,8…的前四十項(xiàng)的之和是:“
Print #1, sum
Close #1 End Sub 1.百錢買百雞
Option Explicit
Private Sub Command1_Click()Dim a As Integer, b As Integer For a = 1 To 34
For b = 1 To 20
If 3 * a + 5 * b +(100b)/ 3 = 100 Then
/ 19
Print a;
Print b;
Print 100b
End If
Next b Next a End Sub 2.分錢作業(yè)
Private Sub Command1_Click()Dim a As Single,b as single,c as single a = Text1.Text b = Fix(a / 100)Print ”100元:“;Print b c = ab * 50
b = Fix(c / 20)Print ”20元:“;Print b c = c0.05 * b b = Fix((c + 0.005)/ 0.02)Print ”0.02元:“;Print b c = c1
If a(i)= a(j)Then
GoTo aaa
End If
Next j
Next i For i = 1 To 10
Print a(i);Next i Print End Sub
Private Sub Command2_Click()Dim i As Integer, j As Integer, t As Integer For i = 1 To 9
For j = 1 + i To 10
If a(i)> a(j)Then
t = a(j)
a(j)= a(i)
a(i)= t
End If
Next j Next i For i = 1 To 10
Print a(i);Next i Print
End Sub
Private Sub Command3_Click()Dim i As Integer, j As Integer, t As Integer For i = 1 To 9
For j = 1 To 10c)> 10 ^(-5)i =(a + b)/ 2
If i ^ 2c = 0 Then
Exit Do
Else
a = i
End If Loop MsgBox(i)End Sub 7.閏年
Option Explicit
Private Sub 計(jì)算_Click()Dim i As Integer i = InputBox(”請(qǐng)輸入一個(gè)年份“)If i Mod 4 = 0 And i Mod 400 = 0 Then
If i Mod 100 <> 0 Then
MsgBox ”NOT“
Else
MsgBox ”YES“
End If Else
MsgBox ”NOT“ End If
End Sub 8.三角
Option Explicit Private Sub Command1_Click()
/ 19
Dim a As Single Dim b As Single Dim c As Single Dim p As Single Dim s As Single
a = Text1.Text b = Text2.Text c = Text3.Text
p =(a + b + c)/ 2
s = Sqr((pb)* p +(p1
If n Mod i = 0 Then
MsgBox ”NOT“
Exit For
End If Next i If i = n Then
MsgBox ”YES“ End If End Sub
Private Sub Command2_Click()
Dim a As Boolean, n As Double, i As Double a = False n = InputBox(”請(qǐng)輸入一個(gè)數(shù):“)For i = 2 To n-1
If n Mod i = 0 Then
a = True
Exit For
End If Next i If a = True Then
/ 19
MsgBox ”NOT“ Else
MsgBox ”YES“ End If End Sub
Private Sub Command3_Click()Dim n As Double, i As Double n = InputBox(”請(qǐng)輸入一個(gè)數(shù):“)i = 2 Do While i < n
If n Mod i = 0 Then
MsgBox ”NOT“
Exit Do
End If i = i + 1 Loop If i = n Then
MsgBox ”YES“ End If End Sub
Private Sub Command4_Click()Dim n As Double, i As Double, sushu As Boolean n = InputBox(”請(qǐng)輸入一個(gè)數(shù):“)i = 2 sushu = True Do While i < n And sushu = True
If n Mod i = 0 Then
sushu = False
End If i = i + 1 Loop If sushu = True Then
MsgBox ”YES“ Else
MsgBox ”NOT" End If End Sub
/ 19
第五篇:VB上機(jī)試題及答案
1、在工程中添加一個(gè)窗體form1,當(dāng)用戶單擊窗體時(shí),在窗體上顯示九九乘法表程序。結(jié)果如下圖所示(本題編程解決,20分)
參考答案:
Private Sub Form_Click()
Cls
For i = 1 To 9
For j = 1 To i
Print i * j;“ ”;
Next j
Next i End Sub
2、在工程中,添加一個(gè)窗體form2,在窗體上放置一個(gè)文本框text1(文本框中的文字為“改變字形”,居中顯示)。三個(gè)復(fù)選框check1,check2和check3,如圖設(shè)置屬性。
要求:當(dāng)用戶單擊“加粗”、“斜體”、“下劃線”這三個(gè)復(fù)選框時(shí)(即當(dāng)復(fù)選框被選中時(shí))能將文本框的字形變?yōu)椤按煮w、斜體、加下劃線”(本題編程完成,滿分:30分)
參考答案:
Private Sub Check1_Click()
Text1.FontBold = Check1.Value End Sub
Private Sub Check2_Click()
Text1.FontItalic = Check2.Value End Sub
Private Sub Check3_Click()
Text1.FontUnderline = Check3.Value End Sub
3、在工程中添加一窗體form3,在窗體上按下圖放置兩個(gè)標(biāo)簽和一個(gè)文本框,一個(gè)列表框和一個(gè)命令按鈕,各控件的名稱屬性取默認(rèn)值。其他屬性按下圖進(jìn)行設(shè)置。
要求:當(dāng)用戶在文本框輸入他的籍貫后,單擊“添加籍貫”按鈕時(shí),能夠?qū)⒓炋砑拥搅斜砜蛑小kp擊列表框中的某一項(xiàng)時(shí)將該項(xiàng)刪除.(本題:20分)
參考答案:
Private Sub Command1_Click()
List1.AddItem Text1.Text End Sub
Private Sub List1_DblClick()
List1.RemoveItem List1.ListIndex End Sub
4、在窗體form4中建立下圖所示的菜單,各菜單項(xiàng)的名稱如下:
文件:file,新建:NEW,-:kong1,打開:OPEN,關(guān)閉:CLOSE 編輯:EDIT,剪切:CUT,復(fù)制:COPY,粘貼:PASTE(本題不用編程,30分)
參考答案:略