VB程序設計方案編程考試題及答案_第1頁
VB程序設計方案編程考試題及答案_第2頁
VB程序設計方案編程考試題及答案_第3頁
VB程序設計方案編程考試題及答案_第4頁
VB程序設計方案編程考試題及答案_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、VB 程序設計編程考試卷及答案1. 輸入 3 個數,輸出最大的數Private Sub command1_click()Dim maxFor i = 1 To 3n = Val(InputBox(" 輸入第 " & i & " 個數 ")If n > max Thenmax = nEnd IfNextPrint "三個數中最大的數是" 。 maxEnd Sub2. 有一元二次方程:aX2+bX+c=0,依次輸入a, b, c,判斷此方程是否有實根Private Sub Command1_Click()Dim a,

2、 b, c, na = Text1b = Text2c = Text3n = b * b - 4 * a * cIf n >= 0 ThenLabel4 = " 方程有根 "ElseLabel4 = " 方程無根 "End IfEnd Sub3. 輸入一個百分制的成績,若大于等于60 ,則用消息框彈出,顯示“恭喜!成績通過!”,若小于60 ,則彈出消息框,顯示“抱歉!成績沒有通過!Private Sub Form_Load()Text1 = ""End SubPrivate Sub Command1_Click()Dim nn

3、= Text1If n > =60 ThenVal (MsgBox(" 恭喜!成績通過! ")ElseVal (MsgBox(" 抱歉!成績沒有通過! ")End IfEnd Sub4. 輸入一年份,判斷它是否為閏年,并顯示有關信息。(判斷閏年的條件是:年份能被4整除但不能被100 整除,或者能被 400 整除)Private Sub Command1_Click()Dim y%y = InputBox(" 請輸入年份")If y Mod 4 = 0 And y Mod 100 <> 0 Or y Mod 400 =

4、 0 ThenVal (MsgBox(" 閏年!")ElseVal (MsgBox(" 平年!")End IfEnd Sub5. 輸入學生的百分制成績,轉換輸出為五級制成績,90100分轉換為優(yōu)秀,8089轉換為良好,7079轉換為中等,6069轉換為及格,060轉換為不及格。Private Sub Command1_Click()a = Val(InputBox(" 請輸入成績")If a > 100 Then Print " 超出范圍 "If a >= 90 And a <= 100 Then

5、 Print " 優(yōu)秀 "If a >= 80 Anda < 90ThenPrint "良好"If a >= 70 Anda < 80ThenPrint "中等"If a >= 60 Anda < 70ThenPrint "及格"If a < 60 ThenPrint " 不及格"End Sub6. 隨機產生一個三位正整數,然后逆序輸出,產生的數與逆序數同時顯示。例如,產生246,輸出是642 。Private Sub Command1_Click()D

6、im x%, x1%, x2%, x3%x = Text1x1 = x Mod 10x2 = (x Mod 100) 10x3 = x 100Label1 = x1 * 100 + x2 * 10 + x3End Sub7. 輸入兩個整數,求它們的最大公約數。private Sub Command1_Click()n1 = InputBox(" 輸入 n")m1 = InputBox(" 輸入 m")If m1 > n1 Thenm = m1: n = n1Elsem = n1: n = m1End Ifr = m Mod nDo While r

7、<> 0 m = n n = rr = m Mod nLoopPrint "m n 的最大公約數是:"。 nEnd Sub8. 編程求200-400 范圍內 5 的倍數或 7 的倍數之和。 (一個數如果同時是7 和 5 的倍數,則只能加一次。Private Sub Command1_Click()For i = 200 To 400If i Mod 5 = 0 Or i Mod 7 = 0 ThenSum = Sum + iEnd IfNext iFor i = 200 To 400If i Mod 5 = 0 And i Mod 7 = 0 ThenSum =

8、 Sum - iEnd IfNext iPrint 倍數之和“ = ” 。 SumEnd Sub9. 計算 100300 之間所有能被3 和 7 整除的數之和Private Sub Command1_Click()Dim iSum = 0For i = 100 To 300If i Mod 3 = 0 And i Mod 7 = 0 ThenSum = Sum + iEnd IfNext iPrint SumEnd Sub10. 分別統(tǒng)計 1-100 中,滿足 3 的倍數、 7 的倍數的數各有多少。Private Sub Command1_Click()Dim i, s3, s7s3 = 0s

9、7 = 0For i = 1 To 100If i Mod 3 = 0 Thens3 = s3 + 1End IfNext iFor i = 1 To 100If i Mod 7 = 0 Thens7 = s7 + 1End IfNext iPrint "3 的倍數"。 s3Print "7 的倍數"。 s7End Sub11. 某次歌曲大獎賽,有7 個評委。如果分別輸入 7 個評委對某個參賽者的打分數,按照去掉一個最高分和一個最低分的計算辦法,求出該參賽者的平均得分。Private Sub Command1_Click()Dim max, a(1 To

10、 7), min, sFor i = 1 To 7a(i) = Val(InputBox(" 輸入第 " & i & " 個數 ") Next imax = a(1)min = a(1)s = a(1) For i = 2 To 7If a(i) > max Then max = a(i)If a(i) < min Then min = a(i)s = s + a(i)Next is = s - min - maxs = s / 5Print "平均分 "。 sEnd Sub12. 輸入一串字符,統(tǒng)計其中字

11、母A( 不區(qū)分大小寫)出現的次數。Private Sub Command1_Click()Dim c As String, a As Integerb = InputBox(" 請輸入字符")For i = 1 To Len(b)c = UCase(Mid(b, i, 1)If c = "A" Thena = a + 1End IfNext iPrint "a 出現的次數: "。 aEnd Sub13.我國目前有13億人口,按人口年增長率0.8%計算,多少年后我國人口將超過26億。Private Sub Command1_Click(

12、)Dim a, i a = 13 i = 0Do While a < 26a = a * (1.008) i = i + 1LoopPrint iEnd Sub14 .小猴有桃若干,第一天吃掉一半多一個;第二天吃剩下桃子的一半多一個;以后每天都 吃尚存桃子的一半多一個,到第7天只剩一個,問小猴原有桃多少?Private Sub Command1_Click()Dim a, i a = 1 Fori = 1 To 6 a = 2 * (a + 1)Next iPrint "小猴原有桃"。a?!敝弧盓nd Sub15 .求100以內的素數Private Sub Comma

13、nd1_Click()Dim i, jFor i = 2 To 100Forj = 2 To i- 1If i Mod j = 0 Then Exit ForNext jIf j = i Then Print iNext iEnd Sub16 .百元買百雞問題。假定小雞每只5角,公雞每只2元,母雞每只3元,編程求解購雞方案。Private Sub Command1_Click()Print "小雞"。""。"母雞"。""。"公雞"Print ""For x = 1 To 10

14、0For y = 1 To 100For z = 1 To 100If 0.5 * x + 2 * y + 3 * z = 100 ThenPrint ""。x。" "o v。 " " ° zEnd IfNext z Next y Next x End Sub17 .編程求斐波那契數列前11項。(斐波那契數列:F(0)=f(l)=l,F(n)=F(n-1)+F(n-2)n>=2 )Private Sub Command1_Click()Dim F(11), i As Long F(0) = 1 F=1 For i =

15、2 To 10 F(i) = F(i - 1) + F(i - 2) Next i For i = 0 To 11 Print F(i)。 Next iEnd Sub18 .將輸入的字符串以反序顯示。例如:輸入“ ASDFGT :顯示“ TGFDSA ”Private Sub Command1_Click()Dim a, b, c, d, na = InputBox("輸入字符串") n = Len(a) For b = 1 To Int(n 2) c = Mid(a, b, 1)Mid(a, b, 1) = Mid(a, n - b + 1, 1)Mid(a, n - b

16、 + 1, 1) = c Next b Print a End Sub19 .隨機產生10個30,100內的整數,求最大值及所對應的下標Private Sub Command1_Click() Dim a(1 To 10), mRandomize For I = 1 To 10 a(I) = Int(Rnd * 71) + 30 Print a(I) Next I Max = a(1) For I = 2 To 10 If a(I) > Max Then Max = a(I): m = I Next I Print "max="。Max Print "max

17、的下標為"。m End Sub20 .隨機產生10個30,100內的整數,求最大值、最小值和平均值。Private Sub Command1_Click()Dim a(1 To 10)Fori = 1 To 10a(i) = Int(Rnd * 71) + 30Print a(i)Next iMax = a(1)Min = a(1)Avg = a(1)For i = 2 To 10If a(i) > Max Then Max = a(i)If a(i) < Min Then Min = a(i)Avg = Avg + a(i)Next iAvg = Avg / 10Pri

18、nt "max="。MaxPrint "min="。 MinPrint "avg="。Avg End Sub21 .隨機產生10個30,100內的整數,求最小值及所對應的下標。Private Sub Command1_Click()Dim a(1 To 10), mRandomizeFor I = 1 To 10a(I) = Int(Rnd * 71) + 30Print a(I)Next IMin = a(1)For I = 2 To 10If a(I) < Min Then Min = a(I): m = INext IPr

19、int "min="。 MinPrint "min的下標為"。mEnd Sub22 .隨機生成一個整型的二維數組,范圍在 10,20之間,以下三角形式輸出該數組。Private Sub Command1_Click()Dim a(1 To 10, 1 To 10), i, j As IntegerFori = 1 To 10Forj = 1 To 10a(i, j) = Int(Rnd *11 + 10)NextNextFori = 1 To 10Forj = 1 To iPrint Spc(3)。a(i, j)。NextPrintNextEnd Sub

20、23 .隨機產生10個1100的正整數放入數組,顯示產生的數,求最大值、最小值、平均 值。Private Sub Command1_Click()Dim a(1 To 10)Fori = 1 To 10a(i) = Int(Rnd * 101) + 1Print a(i)Next iMax = a(1)Min = a(1)Avg = a(1) For i = 2 To 10If a(i) > Max Then Max = a(i)If a(i) < Min Then Min = a(i)Avg = Avg + a(i)Next iAvg = Avg / 10Print "

21、max="。MaxPrint "min="。 MinPrint "avg="。Avg End Sub24 .利用隨機函數生成一個4X4的矩陣(即二維矩陣),范圍是20,50內的整數,輸出該矩陣所有數據之和Private Sub Command1_Click()Dim a%(4, 5), sumFor i = 1 To 4Forj = 1 To 4a(i, j) = Int(Rnd * 31) + 20Print a(i, j)。sum = sum + a(i, j)Next jPrint '換行Next iPrint "sum

22、="。sumEnd Sub25 .已知有序數組a(),編程插入 x (x的值為14)。數組a中的元素分別為12, 6, 4,89, 75, 63, 100, 20, 31。Private Sub Command1_Click()Dim a(), i%, k%, x%, n%a = Array(4, 6, 12, 20, 31,63, 75, 89, 100)n = UBound(a)x = Val(InputBox("請輸入所要插入數")For k = 0 To nIf x < a(k) Then Exit ForNext kReDim Preserve a

23、(n + 1)For i = n To k Step -1 a(i + 1) = a(i)Next ia(k) = xFor i = 0 To n + 1Print a(i)。Next iEnd Sub26 .編寫一函數,計算Double類型一維數組所有元素的平均值。27 .編一子過程ProcMin,求一維數組a中的最小值,子過程的形參自己確定Private Sub command1_Click()Dim a(1 To 10), min, i%Fori = 1 To 10a(i) = Int(Rnd * 101)Print a(i)。Next iCall ProcMin(a(), min)PrintPrint "min =" 。 minEnd SubSub ProcMin(b(), min)Dim i%min = b(LBound(b)For i = LBound(b) + 1 To UBound(b)If

溫馨提示

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

評論

0/150

提交評論