程序改錯(cuò)40題_第1頁
程序改錯(cuò)40題_第2頁
程序改錯(cuò)40題_第3頁
程序改錯(cuò)40題_第4頁
程序改錯(cuò)40題_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第57題 (1.0分) 題號(hào):465'-'【程序改錯(cuò)】'-'題目:用InputBox函數(shù)輸入一個(gè)字符串,編寫程序按與' 輸入的字符相反的次序用Msgbox函數(shù)輸出這個(gè)字' 符串。如輸入字符串為"abcdefgh",則輸出為"h' gfedcba",輸出效果如圖1。'-Option ExplicitPrivate Sub Command1_Click() Dim pristr As String, outstr As String Dim i As Integer pristr = Input

2、Box("please input a string") '*FOUND* For i = 0 To Len(pristr) '*FOUND* outstr = outstr + Mid(pristr, Len(pristr) - i) Next i '*FOUND* MsgBox outstr, , "The Output Result "End Sub答案:=(答案1)=For i = 0 To Len(pristr) - 1=或=For i = 0 To -1+Len(pristr)=(答案2)=outstr = outst

3、r + Mid(pristr, Len(pristr) - i, 1)=或=outstr = Mid(pristr, Len(pristr) - i, 1)+outstr=(答案3)=MsgBox outstr, vbQuestion, "The Output Result "第59題 (1.0分) 題號(hào):147'-'【程序改錯(cuò)】'-'題目:下面的程序用來產(chǎn)生并輸出圖示的楊輝三角。' 1' 1 1' 1 2 1' 1 3 3 1' 1 4 6 4 1' 1 5 10 10 5 1'-Op

4、tion ExplicitPublic Sub readin(a() As Integer, n As Integer) Dim i, j As Integer For i = 1 To n'*FOUND* a(i, n) = 1 a(i, 1) = 1 Next i For i = 3 To n'*FOUND* For j = 2 To n a(i, j) = a(i - 1, j) + a(i - 1, j - 1) Next j Next iEnd SubPublic Sub printf(a() As Integer, n As Integer) Dim i, j As

5、 Integer For i = 1 To n'*FOUND* For j = 1 To n Print Tab(5 * j + 10); a(i, j); Next j Print Next i PrintEnd SubPrivate Sub Form_Click() Dim x(10, 10) As Integer Call readin(x(), 6) Call printf(x(), 6)End Sub答案:=(答案1)=a(i, i) = 1=(答案2)=For j = 2 To i - 1=或=For j = 2 To -1 + i=(答案3)=For j = 1 To i

6、第60題 (1.0分) 題號(hào):146'-'【程序改錯(cuò)】'-'題目:用輾轉(zhuǎn)相除法求兩個(gè)整數(shù)的最大公約數(shù)。'-Option ExplicitFunction gcd(ByVal m As Integer, ByVal n As Integer) As Integer Dim r As Integer r = m Mod n Do While r <> 0'*FOUND* n = m n = r r = m Mod n Loop'*FOUND* gcd = rEnd FunctionPrivate Sub Form_Click()

7、Dim a As Integer, b As Integer, c As Integer a = InputBox("輸入一個(gè)整數(shù)") b = InputBox("輸入一個(gè)整數(shù)") a = Val(a) b = Val(b)'*FOUND* Call gcd(a, b) Print a, b, cEnd Sub答案:=(答案1)=m = n=(答案2)=gcd = n=(答案3)=c = gcd(a, b)第65題 (1.0分) 題號(hào):492'-'【程序改錯(cuò)】'-'題目:輸入兩個(gè)正整數(shù)m和n,求其最大公約數(shù)。

8、9;-Option ExplicitPrivate Sub Form_Click() Dim m As Integer, n As Integer, r As Integer m = InputBox("輸入m的值:") n = InputBox("輸入n的值:") Do While n <> 0 '*FOUND* r = m / n m = n '*FOUND* n = m Loop '*FOUND* Print "兩數(shù)的最大公因子為:" nEnd Sub答案:=(答案1)=r = m Mod n

9、=(答案2)=n = r=(答案3)=Print "兩數(shù)的最大公因子為:" m第66題 (1.0分) 題號(hào):467'-'【程序改錯(cuò)】'-'題目:從計(jì)算機(jī)輸入三個(gè)數(shù) , 找出中間數(shù)'-Option ExplicitPrivate Sub FindMidNum() Dim x As Integer, y As Integer, z As Integer, A As Integer x = InputBox("PLEASE INPUT THE FIRST NUMBER") y = InputBox("PLEAS

10、E INPUT THE SECOND NUMBER") z = InputBox("PLESSE INPUT THE THIRD NUMBER") '*FOUND* If x > y Then A = x x = y y = A End If '*FOUND* If y = z Then Print y '*FOUND* ElseIf x = z Then Print z Else Print x End IfEnd SubPrivate Sub Form_Click() FindMidNumEnd Sub答案:=(答案1)=If x

11、 < y Then=或=If y > x Then=(答案2)=If y >= z Then=或=If z <= y Then=(答案3)=ElseIf x >= z Then=或=ElseIf z <= x Then第70題 (1.0分) 題號(hào):142'-'【程序改錯(cuò)】'-'題目:程序功能根據(jù)輸入的學(xué)習(xí)成績,分別顯示優(yōu)秀' (90分以上), 良好(75分以上),及格(60分以上)' 不及格四個(gè)等級(jí).'-Option ExplicitPrivate Sub Form_Click()ClsDim i As

12、 Integeri = InputBox("請(qǐng)輸入學(xué)習(xí)成績")Select Case i'*FOUND* Case 0 < i < 100 MsgBox "成績應(yīng)該在0-100之間"""'*FOUND* Case 90 Print "優(yōu)秀" Case 75 To 89 Print "良好" Case 60 To 74 Print "及格" '*FOUND* Case MsgBox "不及格", vbCriticalEnd

13、 SelectEnd Sub答案:=(答案1)=Case is>100 ,is<0 =或= case is<0 ,is>100=(答案2)=Case 90 to 100=(答案3)=Case else第71題 (1.0分) 題號(hào):473'-'【程序改錯(cuò)】'-'題目:下列程序進(jìn)行-n階乘運(yùn)算,當(dāng)階乘的值超過-21147483648 溢出報(bào)錯(cuò),并將結(jié)果輸出為-1。'-Option Explicit'*FOUND*Private Function jc(ByVal n As Integer) As Integer Dim I A

14、s Integer Dim result As Long result = 1 I = 1 Do While I <= n If result < 2114748348 / I Then '*FOUND* result = result I = I + 1 Else lblerr.Caption = "溢出" '*FOUND* jc = -I Exit Function End If Loop jc = -resultEnd FunctionPrivate Sub Form_Click() MsgBox jc(3)End Sub答案:=(答案1)

15、=Private Function jc(ByVal n As Integer) As Long=(答案2)=result = result * I=或=result = I * result=(答案3)=jc = -1第72題 (1.0分) 題號(hào):145'-'【程序改錯(cuò)】'-'題目:該程序的功能是求出100到200之間的全部素?cái)?shù),' 并且按每行4個(gè)、每個(gè)數(shù)據(jù)之間有10個(gè)空格的格' 式輸出。'-Option ExplicitPrivate Sub Form_Click() Dim k As Integer, i As Integer, j

16、 As Integer k = 0 For i = 100 To 200'*FOUND* For j = 1 To i - 1 If i Mod j = 0 Then Exit For Next j If j = i Then'*FOUND* Print i; Tab(10); k = k + 1'*FOUND* If k Mod 5 = 0 Then Print ; End If Next iEnd Sub答案:=(答案1)=For j = 2 To i - 1=或=For j = 2 To -1 + i=(答案2)=Print i; Space(10);=或=Pri

17、nt i; Spc(10);=(答案3)=If k Mod 4 = 0 Then Print=或=If 0 = k Mod 4 Then Print=或=if k/4 = k 4 then Print=或=if k4 = k/4 then Print=或=if k/4 = int(k/4) then Print第73題 (1.0分) 題號(hào):132'-'【程序改錯(cuò)】'-'題目:求s=2!+4!+6!+8!,階乘的計(jì)算用Function過程' fact實(shí)現(xiàn)'-Option ExplicitPrivate Sub Form_Click()Dim i A

18、s Integer, s As Long'*FOUND*For i = 2 To 8 s = s + fact(i)Next iPrint sEnd Sub'*FOUND*Public Function fact()Dim t As LongDim i As Integert = 1For i = 1 To nt = t * iNext i'*FOUND*fact = iEnd Function答案:=(答案1)=For i = 2 To 8 Step 2=(答案2)=Public Function fact(ByVal n As Integer)=或=Public F

19、unction fact(n As Integer)=或=Public Function fact(n%)=或=Public Function fact(n)=或=Public Function fact(ByVal n%)=或=Public Function fact(ByVal n)=(答案3)=fact = t第76題 (1.0分) 題號(hào):479'-'【程序改錯(cuò)】'-'題目:下面的程序用“冒泡”法完成數(shù)組a中的10個(gè)整數(shù)' 按升序排列,請(qǐng)修正程序中錯(cuò)誤。'-Option ExplicitPrivate Sub Command1_Click(

20、) Dim a Dim i As Integer, j As Integer, a1 As Integer a = Array(-2, 5, 24, 58, 43, -10, 87, 75, 27, 83) For i = 1 To 9 '*FOUND* For j = i To 9 '*FOUND* If a(j) >= a(i) Then a1 = a(i) a(i) = a(j) '*FOUND* a(j) = a(i) End If Next j Next i For i = 0 To 9 Print a(i) Next iEnd Sub答案:=(答案1)

21、=For j = i + 1 To 9=或=For j = 1 + i To 9=(答案2)=If a(i) >= a(j) Then=(答案3)=a(j) = a1第77題 (1.0分) 題號(hào):490'-'【程序改錯(cuò)】'-'題目:輸入一個(gè)字符串,將所有的小寫字母都轉(zhuǎn)換為大寫字母。'-Option ExplicitPrivate Sub Form_Click() Dim s1 As String, s2 As String, i As Integer, t As String s1 = InputBox("輸入字符串,#號(hào)結(jié)束"

22、) i = 1 '*FOUND* s1 = Mid(s1, i, 1) While t <> "#" '*FOUND* If t >= "a" And t <= "z" Then t = Chr(Asc(t) - 30) s2 = s2 + t i = i + 1 t = Mid(s1, i, 1) Wend '*FOUND* Print "新字符串為:" s1End Sub答案:=(答案1)=t = Mid(s1, i, 1)=(答案2)=If t >= &q

23、uot;a" And t <= "z" Then t = Chr(Asc(t) - 32)=(答案3)=Print "新字符串為:" s2第79題 (1.0分) 題號(hào):487'-'【程序改錯(cuò)】'-'題目:設(shè)窗體中有圖片框Pic1,現(xiàn)要求在其中繪制10個(gè)同心圓,' 然后將此圖以Test.BMP作文件名存入磁盤。'-Option ExplicitPrivate Sub Command1_Click() Dim X As Integer Dim Y As Integer Dim I As Inte

24、ger Dim rad(9) As Integer X = Pic1.ScaleWidth / 2 Y = Pic1.ScaleHeight / 2 '*FOUND* For I = 1 To 9 rad(I) = 500 * Rnd Next I I = 9 '*FOUND* Do Until I < 1 Pic1.Circle (X, Y), rad(I), RGB(256 * Rnd, 256 * Rnd, 256 * Rnd) '*FOUND* I = I + 1 Loop SavePicture Pic1.Image, "Test.BMP&qu

25、ot;End Sub答案:=(答案1)=for i=0 to 9 =或= for i=0 to 9 step 1=(答案2)=Do Until I < 0 =或= do until 0>i=(答案3)=I = I - 1 =或= i=-1+i第80題 (1.0分) 題號(hào):460'-'【程序改錯(cuò)】'-'題目:已知C的公式表示如下:' n!' C=-' (n-m)!*m! '函數(shù)過程fac( )求k!函數(shù),在Fomr_Click事件中完成運(yùn)算,'請(qǐng)修正程序中錯(cuò)誤。'-Option ExplicitPriva

26、te Function fac(k As Integer) As Single Dim x As Single, j As Integer '*FOUND* x = 0 For j = 1 To k '*FOUND* x = x j Next j fac = xEnd FunctionPrivate Sub Form_Click() Dim C As Single Dim m As Integer, n As Integer m = Val(InputBox("請(qǐng)輸入一個(gè)整數(shù)(m):") n = Val(InputBox("請(qǐng)輸入一個(gè)整數(shù)(n):") '*FOUND* C = fac(n) / fac(n - m) * fac(m) Print "

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論