金陵科技學(xué)院VB期末考試題目_第1頁
金陵科技學(xué)院VB期末考試題目_第2頁
金陵科技學(xué)院VB期末考試題目_第3頁
金陵科技學(xué)院VB期末考試題目_第4頁
金陵科技學(xué)院VB期末考試題目_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、金陵科技學(xué)院2012-2013年第一學(xué)期Visual Basic期末考試范圍(題目及答案) M12機械設(shè)計制造及其自動化(專轉(zhuǎn)本)丁世斌 整理于2012/12/27五編程。1題目:請按照題目要求設(shè)計指定的窗體。 -輸入一個正整數(shù)數(shù),判斷其是否為素數(shù),并用msgbox來顯示結(jié)果。例如輸入23顯示23是素數(shù);輸入21則顯示21不是素數(shù)。判斷按鈕:實現(xiàn)素數(shù)判斷1.參考答案:方法一: Private Sub Command1_Click() Dim x As Integer, i As Integer x = Val(Text1) For i = 2 To Sqr(x) If x Mod i = 0

2、Then Exit For Next i If i Sqr(x) Then MsgBox Str(x) & 是素數(shù)! Else MsgBox Str(x) & 不是素數(shù)! End If End Sub方法二: Option ExplicitPrivate Sub Command1_Click() Dim x As Integer, i As Integer x = Val(Text1) For i = 2 To x - 1 If x Mod i = 0 Then Exit For Next i If i = x Then MsgBox x & 是素數(shù) Else MsgBox x & 不是素數(shù)

3、End IfEnd Sub2題目:請按照題目要求設(shè)計指定的窗體。-輸入一個二進(jìn)制數(shù),將其轉(zhuǎn)化為十進(jìn)制數(shù)。轉(zhuǎn)換按鈕:用于實現(xiàn)進(jìn)制的轉(zhuǎn)換清空按鈕:用于實現(xiàn)文本框的清空,同時將焦點定位在Text1中2.參考答案:方法一: Private Sub Command1_Click()Dim st As String For i = 1 To Len(Text1) st = st & Trim(Mid(Text1, i, 1) Next i For i = 1 To Len(st) Sum = Sum + Mid(st, i, 1) * 2 (Len(st) - i) Next i Text2 = SumE

4、nd Sub Private Sub Command2_Click() Text1.Text = Text2.Text = Text1.SetFocusEnd Sub方法二: Option ExplicitPrivate Sub Command1_Click() Dim i As Integer, s As String, sum As Integer Dim x As String s = Text1 For i = 1 To Len(s) x = Mid(s, i, 1) sum = sum + Val(x) * 2 (Len(s) - i) Next i Text2 = CStr(sum

5、)End Sub Private Sub Command2_Click() EndEnd Sub3題目:請按照題目要求設(shè)計指定的窗體。-輸入一個10進(jìn)制正整數(shù),將其轉(zhuǎn)換為一個2進(jìn)制數(shù)。轉(zhuǎn)換按鈕:實現(xiàn)進(jìn)制轉(zhuǎn)換清空按鈕:實現(xiàn)文本框的清空,同時焦點定位在Text1中3.參考答案:方法一: Private Sub Command1_Click()Dim a As Integer, st As String a = Val(Text1) Do While a 0 b = a Mod 2 a = a 2 st = b & st Loop Text2 = stEnd Sub Private Sub Comm

6、and2_Click() Text1.Text = Text2.Text = Text1.SetFocusEnd Sub方法二: Option ExplicitPrivate Sub Command1_Click() Dim a As Integer, r As Integer, s As String a = Val(Text1.Text) Do While a 0 r = a Mod 2 a = a 2 s = CStr(r) & s Loop Text2.Text = sEnd Sub Private Sub Command2_Click() Text1 = Text2 = End Su

7、b4題目:請按照題目要求設(shè)計指定的窗體。-輸入2個正整數(shù),求這2個數(shù)的最大公約數(shù)。計算按鈕: 用來實現(xiàn)計算最大公約數(shù)退出按鈕:用來實現(xiàn)程序的退出4.參考答案:方法一: Private Sub Command1_Click()Dim m As Long, n As LongDim r As Long m = Val(Text1.Text) n = Val(Text2.Text)If m 1 Or n 1 Or n 1 Then Do r = m Mod n m = n n = r Loop While r 0 Text3 = CStr(m) End IfEnd SubPrivate Sub Co

8、mmand2_Click() EndEnd Sub5題目:請按照題目要求設(shè)計指定的窗體。-產(chǎn)生10個10100之間的兩位隨機整數(shù),將10個數(shù)顯示一個文本框中同時查找其中是否有某個數(shù),如果有給出其在數(shù)組中的位置,如果沒有給出相應(yīng)的提示信息。結(jié)果信息用msgbox消息框彈出提示,如“36出現(xiàn)在第2位”;或者“沒有出現(xiàn)36”5.參考答案:方法一: Dim a() As IntegerPrivate Sub Command1_Click()ReDim a(10) As IntegerRandomizeFor i = 1 To 10 a(i) = Int(Rnd * 90 + 10) Text1 = T

9、ext1 & Str(a(i)Next iEnd Sub Private Sub Command2_Click()Dim find As Integerfind = Val(Text2)For i = 1 To 10 If find = a(i) Then Exit ForNext iIf i = 10 Then MsgBox find & 出現(xiàn)在第 & Str(i) & 位ElseMsgBox 沒有出現(xiàn) & findEnd IfEnd Sub Private Sub Command3_Click()EndEnd sub方法二: Option ExplicitOption Base 1Dim

10、a(10) As Integer, i As IntegerPrivate Sub Command1_Click() Randomize For i = 1 To 10 a(i) = Int(Rnd * 90) + 10 Text1 = Text1 & Str(a(i) Next iEnd Sub Private Sub Command2_Click() Dim find As Integer find = Val(Text2.Text) For i = 1 To 10 If a(i) = find Then Exit For Next i If i Max Then Max = a(i) I

11、f a(i) max Then max = compare(i) ElseIf compare(i) a(j) Then t = a(i) a(i) = a(j) a(j) = t End If Next j Next i For Each v In a Text2.Text = Text2.Text & Str(v) Next vEnd Sub Private Sub Command3_Click() Text1.Text = Text2.Text = End Sub Private Sub Command4_Click() EndEnd Sub8題目:請按照題目要求設(shè)計指定的窗體。-隨機產(chǎn)

12、生10個兩位整數(shù)并將10個數(shù)采用冒泡排序的算法實現(xiàn)升序排列 Option ExplicitOption Base 1Dim a(10) As Integer, i As IntegerDim j As Integer, t As IntegerDim v As Variant Private Sub Command1_Click() Randomize For i = 1 To 10 a(i) = Int(90 * Rnd) + 10 Text1.Text = Text1.Text & Str(a(i) Next iEnd Sub Private Sub Command2_Click() Fo

13、r i = 1 To 9 For j = 1 To 10 - i If a(j) a(j + 1) Then t = a(j) a(j) = a(j + 1) a(j + 1) = t End If Next j Next i For Each v In a Text2.Text = Text2.Text & Str(v) Next vEnd Sub Private Sub Command3_Click() Text1.Text = Text2.Text = End Sub Private Sub Command4_Click() EndEnd Sub9.題目:請按照題目要求設(shè)計指定的窗體。-

14、編程計算公式S=1!+3!+5!+(2N-1)!的值。窗體設(shè)計界面參見如下。(1)要求N的值在文本框Text1中輸入,累加和顯示在Text2中;(2)程序中應(yīng)定義一個通用函數(shù)過程fact(),用以計算某個整數(shù)的階乘9.參考答案:方法一: Private Sub Command1_Click()n = Val(Text1)For i = 1 To 2 * n - 1 Step 2 Sum = Sum + fact(i)Next iText2 = CStr(Sum)End Sub Public Function fact(ByVal n As Integer) As LongDim k As In

15、tegerfact = 1If n = 0 Or n = 1 Then Exit Function Else: For k = 1 To n fact = fact * kNext kEnd IfEnd Function Private Sub Command2_Click()EndEnd Sub方法二: Option ExplicitPrivate Sub Command1_Click() Dim sum As Long, n As Integer, i As Integer n = Val(Text1) For i = 1 To n sum = sum + fact(2 * i - 1)

16、Next i Text2 = sumEnd Sub Private Function fact(ByVal n As Integer) As Long Dim i As Integer If n = 0 Or n = 1 Then fact = 1 Else fact = n * fact(n - 1) End IfEnd Function Private Sub Command2_Click()EndEnd Sub10題目:請按照題目要求設(shè)計指定的窗體。-編寫程序,找出100以內(nèi)的所有素數(shù),存放在數(shù)組P中, 并將所找到的素數(shù),按每行10個的形式顯示在文本框Text1中。程序界面如下圖所示:(

17、1)按“找素數(shù)”按鈕,則查找素數(shù),并按格式要求顯示在多行文本框中;(2)程序中應(yīng)定義一個通用函數(shù)過程Prime(),以判斷一個數(shù)是否為素數(shù);10.參考答案:方法一: Private Sub Command1_Click()Dim P(50) As Integer Dim j As Integer For j = 1 To 100 If prime(j) = True Then m = m + 1 P(m) = j End If Next j For i = 1 To m Text1 = Text1 & Str(P(i) If i Mod 10 = 0 Then Text1 = Text1 &

18、vbCrLf Next i End Sub Private Function prime(ByVal n As Long) As Boolean Dim i As Long For i = 2 To n - 1 If n Mod i = 0 Then Exit Function Next i If i = n Then prime = TrueEnd Function方法二: Option ExplicitOption Base 1Private Sub Command1_Click() Dim i As Integer, k As Integer Dim a() As Integer For i = 2 To 100 If prime(i) Then k = k + 1 ReDim Preserve a(k

溫馨提示

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

評論

0/150

提交評論