大学计算机VB程序设计教程课后答案

阅读: 评论:0

2024年2月4日发(作者:)

大学计算机VB程序设计教程课后答案

参考答案

第1章概述

二.选择题:

1.C

2. B.

3.C.

4.C.

5.A

6.C

7.D

8.B

9.B 10.B

11.A12.C 13.D 14.C 15.D

16.A17.C 18.A19.A20.D 21.B

三.填空题:

1.面向对象,事件驱动

2.编译,解释

3.设计,运行,中断

4.F5

5.调试

6.切换文件夹

四.编程及上机调试:

1.略

Form_Click( )

n = “你单击了窗体”

End Sub

Sub Form_DblClick( )

n = “你双击了窗体”

End Sub

第2章面向对象编程基础

二.选择题:

1.C

2. C.

3.B.

4.B.

5.D

6.D

7.B

8.B

9.C 10.D

11.B 12.B 13.B 14.C 15.A

16.B 17.B 18.B 19.C 20.B

三.填空题:

1.窗体,控件

2.属性,事件,方法

d2_click

e

5.中部,代码

四.编程及上机调试:

e Sub Command1_Click()

State = 2

End Sub

Private Sub Command2_Click()

State = 0

1

End Sub

Private Sub Command3_Click()

State = 1

End Sub

e Sub Command1_Click()

e = LoadPicture("d:")

Command1.V isible = False

Command2.V isible = False

End Sub

Private Sub Command2_Click()

End

End Sub

Private Sub Form_DblClick()

e = LoadPicture("")

Command1.V isible = True

Command2.V isible = True

End Sub

第3章常用标准控件

二.选择题:

1.C

2. B

3.C.

4.D

5.B

6.B

7.A

8.C

9.B 10.C

11.C 12.A13.C 14.B 15.D

16.D 17.C 18.A19.D 20.A21.B

三.编程及上机调试:

1.

Private Sub Check1_Click()

If Check1.V alue = 1 Then

ld = True

Else

ld = False

End If

End Sub

Private Sub Check2_Click()

If Check2.V alue = 1 Then

alic = True

Else

alic = False End If

End Sub

Private Sub Check3_Click()

If Check1.V alue = 1 Then

derline = True Else

derline = False End If

End Sub

Private Sub Command1_Click() = " "

End Sub

2.

Private Sub Command1_Click() = unt End Sub

Private Sub Command2_Click() m

= " "

End Sub

Private Sub Command3_Click() Dim i As Integer

i = dex

Item i

d = False

us

= unt End Sub

Private Sub Form_Load()

d = False End Sub

Private Sub List1_Click()

d = True End Sub

第4章VB语言基础

二.选择题:

1.A

2. D

3.D.

4.A

5.A

6.A

7.C

8.D

9.C 10.B

11.A 12.D 13.C 14.A15.A

16.C 17.D 18.A19.B 20.D

21.C 22.A23.B 24.C 25.C

三.编程及上机调试:

e Sub Form_Load()

Dim x As Integer, s As String, d As Integer

Randomize

x = Int(Rnd * 9000 + 1000)

s = Trim(CStr(x))

d = V al(Right(s, 1) + Mid(s, 3, 1) + Mid(s, 2, 1) + Left(s, 1))

Show

Print "产生的数;"; x; "倒序数"; d

End Sub

e Sub Form_KeyPress(KeyAscii As Integer)

Print "输入字符:"; Chr(KeyAscii), "ASCII码为:"; KeyAscii

End Sub

Private Sub Form_DblClick()

Cls

End Sub

e Sub Form_Click()

MsgBox "在这里显示提示" & vbCrLf & "提示信息", 2 + 16, "请确认"

End Sub

Private Sub Form_Click()

MsgBox "在这里显示提示" + Chr(13) + "提示信息", vbAbortRetryIgnore

_ + vbCritical, "请确认"

End Sub

第5章程序控制结构

二.单选题

1.D

2. C

3.C.

4.D.

5.B

6.C

7.A

8.A

9.D 10.C

11.C 12.C 13.B 14.B

四.编程及上机调试

1. Private Sub Form_Click()

Dim x As Integer, y As Integer

x = InputBox("请输入一个数值")

If x > 20 Then

y = x ^ 2 + 3 * x + 2

ElseIf x >= 10 Then

y = Sqr(3 * x) - 2

ElseIf x > 0 Then

y = 1 / x + Abs(x)

End If

Print "x="; x, "y="; y

End Sub

(2)Select Case实现:

Private Sub Form_Click()

Dim x As Integer, y As Integer

x = InputBox("请输入一个数值")

Select Case x

Case Is > 20

y = x ^ 2 + 3 * x + 2

Case Is >=10

y = Sqr(3 * x) - 2

Case Is > 0

y = 1 / x + Abs(x)

End Select

Print "x="; x, "y="; y

End Sub

2.

Private Sub Form_Click()

Dim a As Integer, b As Integer, c As Integer

For i = 100 To 999

a = i 100

b = (i - a * 100) 10

c = i Mo

d 10

If a ^ 3 + b ^ 3 + c ^ 3 = i Then

Print i;

k = k + 1

If k Mod 2 = 0 Then Print

End If

Next i

End Sub

3.

Private Sub Command1_Click()

p = 60: r = 0.014

Do

p = p * (1 + r)

n = n + 1

Loop Until p >= 70

Print n; "年后世界人口达到"; p; "亿"

End Sub

4.

Private Sub Command1_Click()

Dim s As Single, x As Integer, t As Single, n As Integer x = V

al(InputBox("请输入x的值", , 2))

s = 1

n = 1

m = 1

Do

n = n + 1

m = -m

t = m * n / x ^ (n - 1)

If Abs(t) < 0.00001 Then Exit Do

s = s + t

Loop

Print s

End Sub

第6章数组

二.单选题:

1.A

2.A.

3.A

4.C

5.D

6.D

7.A

8.D

9.B 10.B

四.编程及上机调试:

1.

Option Base 1

Private Sub Form_Click()

Dim a(10) As Integer

Dim i As Integer, t As Integer

Print "数组的原始数据为:";

For i = 1 To 10

a(i) = Int(11 * Rnd) + 10

Print a(i);

Next i

Print

Print "变化后数组数据为:";

For i = 1 To 5

t = a(i)

a(i) = a(10 - i + 1)

a(10 - i + 1) = t

Next i

For i = 1 To 10

Print a(i);

Next i

End Sub

2.

Option Base 1

Private Sub Form_Click()

Dim a(3, 4) As Integer, i As Integer, j As Integer, k As Integer, p

As Integer Randomize

For i = 1 To 3

For j = 1 To 4

a(i, j) = Int(90 * Rnd + 10)

Print a(i, j);

Next j

Print

Next i

Max = a(1, 1): k = 1: p = 1

For i = 1 To 3

For j = 1 To 4

If a(i, j) > Max Then

Max = a(i, j)

k = i

p = j

End If

Next j

Next i

Print "最大的数为第" & k & "行,第" & p & "列的数:" & Max

End Sub

3.

Option Base 1

Dim a(4, 5) As Integer '在窗体声明段声明数组Dim i As Integer, j As

Integer

Private Sub cmdmatrix_Click() '"生成数组"按钮Randomize

For i = 1 To 4

For j = 1 To 5

a(i, j) = Int(Rnd * 10) '一位的随机数

a(i, j); '输出元素Next j

Next i

End Sub

Private Sub cmdcol_Click() '"求列和"按钮Dim colsum As Integer

= ""

For j = 1 To 5 '列变量先循环colsum = 0

For i = 1 To 4

colsum = colsum + a(i, j)

Next i

= & Str(colsum)

Next j

End Sub

Private Sub cmdrow_Click() '"求行和"按钮Dim rowsum As Integer

= ""

For i = 1 To 4 '行变量先循环rowsum = 0

For j = 1 To 5

rowsum = rowsum + a(i, j)

Next j

= & CStr(rowsum) & vbCrLf Next i

End Sub

Private Sub cmdclear_Click() '"清除"按钮

= ""

= ""

End Sub

Private Sub cmdexit_Click() '"结束"按钮End

End Sub

4. Option Base 1

Private Sub Form_Click()

Dim a() As Integer, b() As Integer, i As Integer, j As Integer, x

As Integer, y As Integer x = InputBox("第一维上界")

Do While Not IsNumeric(x)

x = Int(InputBox("第一维上界"))

Loop

y = InputBox("第二维上界")

Do While Not IsNumeric(x)

y = Int(InputBox("第二维上界"))

Loop

ReDim a(x, y)

Print "原数组元素为:"

For i = 1 To x

For j = 1 To y

a(i, j) = Int(90 * Rnd) + 10

Print a(i, j);

Next j

Print

Next i

Print "转置后数组元素为:"

For i = 1 To y

For j = 1 To x

Print a(j, i);

Next j

Print

Next i

End Sub

5. Option Base 1

Private Sub Form_Click()

Dim a(10, 10) As Integer, i As Integer, j As Integer

For i = 1 To 10

For j = 1 To 10

If i = j Or i + j = 11 Then

a(i, j) = 0

Else

a(i, j) = 1

End If

Print a(i, j);

Next j

Print

Next i

End Sub

6. Option Explicit

Option Base 1

Private Sub Command1_Click()

Dim i As Integer, j As Integer, n As Integer, k As Integer, a(11)

As Integer

j = 1

For i = 3 To 21 Step 2

a(j) = i

Print a(j);

j = j + 1

Next i

Print

n = InputBox("请输入一个数")

For i = 1 To 10

If n = a(i) Then

For j = i To 10

a(j) = a(j + 1)

k = k + 1

Next j

End If

Next i

For i = 1 To 9

Print a(i);

Next i

End Sub

7. Option Base 1

Private Sub Form_Click()

Dim a As V ariant, k As Integer, i As Integer, j As Integer

Dim b As V ariant

b = Array(17, 35, 128, 235, 89, 121, 143, 189, 231, 94)

a = Array(11.3, 12.3, 12#, 11.8, 12.6, 11.6, 12.8, 11.8, 12.4, 12.1)

For i = 1 To 9 '对数组a的元素排序

k = i

For j = i + 1 To 10

If a(k) > a(j) Then k = j

Next j

If k <> i Then '数组b的元素随数组a的元素一起变动t = a(i)

a(i) = a(k)

a(k) = t

t = b(i)

b(i) = b(k)

b(k) = t

End If

Next i

Print "按名字的排列顺序为:"

For i = 1 To 10

If Len(b(i)) = 2 Then b(i) = "0" & b(i) '补上数组b中长度为2的编号前的"0"

Print "第" & i & "名的号码为:" & b(i) & ",成绩为:" & a(i)

Next i

End Sub

第7章过程

二、单选题

1.C

2. D

3.C

4.D

5. B

6.A

7. B

8.B

9.C 10.D

11.C 12.D 13.B 14.B 15.C

16.A17.B 18.B

三、填空题

1.52 51

2.4 11

8 35

3.1 3 5

四.编程及上机调试:

1. Private Sub Command1_Click()

Dim n As Integer

For n = 100 To 1600 Step 500

Print "n="; n; "时π的近似值是:"; pi(n)

Next n

End Sub

Private Function pi(x As Integer) As Single

Dim s As Single, k As Integer, m As Integer

s = 0

k = 1

m = 1

Do

s = s + m / k

m = -m

k = k + 2

Loop While k <= x

pi = 4 * s

End Function

Private Sub Command2_Click()

End

End Sub

2. Private Sub Command1_Click()

Dim x As Integer, i As Integer

x = V al(Text1)

For i = 1 To x

If prime(i) And prime(x - i) Then

Label2 = Str(x) & "是" & Str(i) & "和" & Str(x - i) & "两个素数之和"

Exit Sub

End If

Next i

End Sub

Private Function prime(x As Integer) As Boolean

For i = 2 To Int(Sqr(x))

If x Mod i = 0 Then

prime = False

Exit Function

End If

Next i

prime = True

End Function

Private Sub Command2_Click()

End

End Sub

3. Option Explicit

Option Base 1

Dim a(10) As Integer

Private Sub Command1_Click()

Randomize

Dim i As Integer

For i = 1 To 10

a(i) = Int(Rnd * 90) + 10

Text1 = Text1 + Str(a(i))

Next i

Call sort(a)

For i = 1 To 10

Text2 = Text2 + Str(a(i))

Next i

End Sub

Private Sub sort(a() As Integer)

Dim k As Integer, i As Integer, j As Integer, t As Integer k =

UBound(a)

For i = 1 To k - 1

For j = i + 1 To k

If a(i) < a(j) Then

t = a(i)

a(i) = a(j)

a(j) = t

End If

Next j

Next i

End Sub

Private Sub Command2_Click()

End

End Sub

4. Option Explicit

Private Sub Command1_Click()

Dim i As Integer, j As Integer, s As Integer

For i = 2 To 1000

S=0

For j=1 To i - 1

If I mod j=0 Then s=s+j

Next j

If s=i Then Print I,

Next i

End Sub

5. Public a(10) As Integer

Public Sub sort(a() As Integer)

Dim i As Integer, j As Integer, t As Integer

For i = 1 To UBound(a) - 1

For j = i + 1 To UBound(a)

If a(i) > a(j) Then

t = a(i)

a(i) = a(j)

a(j) = t

End If

Next j

Next i

End Sub

Public Function max(a() As Integer) As Integer

max = a(1)

For i = 2 To UBound(a)

If max < a(i) Then

max = a(i)

End If

Next i

End Function

窗体Form1代码

Private Sub Command1_Click()

Dim i As Integer

Randomize

For i = 1 To UBound(a)

a(i) = Int(Rnd * 90) + 11

Text1 = Text1 & Str(a(i))

Next i

End Sub

Private Sub Command2_Click()

End Sub

Private Sub Command3_Click()

Text2 = max(a)

End Sub

Private Sub Command4_Click()

End

End Sub

窗体Form2代码

Private Sub Command1_Click()

Call sort(a)

For i = 1 To UBound(a)

Text1 = Text1 & Str(a(i))

Next i

End Sub

Private Sub Command2_Click()

End Sub

第8章程序调试

二.上机调试题

1. Option Explicit

Private Sub Form_Click()

Dim a() As Single, i As Integer

Dim y As Single

i = 1

Do

ReDim a(i) …改为ReDim Preserve A(I) a(i) = 1 / fib(i)

If a(i) <= 0.0001 Then Exit Do …改为a(i) < 0.0001 y = y + a(i)

i = i + 1

Loop

Print "y="; y

For i = 1 To UBound(a)

Print a(i);

Next i

End Sub

Private Function fib(i As Integer) As Integer

If i = 1 Then

fib = 1

ElseIf i = 2 Then

fib = 2

Else

Fib(i)= fib(i - 1) + fib(i - 2) …改为Fib=Fib(I-1)+Fib(I-2) End If

End Function

2. Option Explicit

Private Sub Command1_Click()

Dim i As Integer, k As Integer, st As String

For i = 10 To 500

If wanshu(i) Then

st = CStr(i)

= & st

Call test(st)

= & Chr(13) & Chr(10)

End If

Next i

End Sub

Private Function wanshu(n As Integer) As Boolean

Dim i As Integer, sum As Integer

For i = 2 To n – 1 …改为i=1

If n Mod i = 0 Then

sum = sum + i

End If

Next i

If sum = n Then wanshu = True

End Function

Private Sub test(s As String)

Dim i As Integer, sum As Integer

sum = 0 …位置错,和for 语句位置调换

Do While Len(s) > 1

For i = 1 To Len(s)

sum = sum + V al(Mid(s, i, 1))

Next i

= & "->" & Str(sum)

s = Str(sum) … 改为s = CStr(sum) Loop

End Sub

第9章数据文件

一、单选题

1.B

2.C

3.A

4.B

5.C

6.B

7.C

8.B

9.10.A

11. 12.A13. 14. 15.A16.B

二、编程及上机调试

e Sub Form_Load()

Open "d:" For Output As #1

End Sub

Private Sub Text1_keyPress(KeyAscii As Integer)

If KeyAscii = 13 Then

If Trim(Text1) = "0000" Then

Close #1

End

End If

Write #1, Text1

= ""

End If

End Sub

Explicit

Private Type Student

name As String * 10

age As Integer

End Type

Private Sub Command1_Click()

Dim Stu As Student

Open "d:" For Random As #1 Len = Len(Stu)

= "WangY ing"

= 20

Put #1, , Stu

Close #1

Open "d:" For Random As #1 Len = Len(Stu)

Get #1, , Stu

Print "姓名:",

Print "年龄:",

Close #1

End Sub

第10章其它控件

二、选择题

1.B

2.B

3.B

4.C

5.

6.A,C

7.A

8.

9.10.

11. 12.B 13.

三、填空题

1.菜单编辑器

2.下拉式菜单弹出式

3.顶

enu

5.多文档窗体

ld

e Sub HScroll1_Change()

text1 = HScroll1.V alue

End Sub

Private Sub HScroll1_Scroll()

text1 = HScroll1.V alue

End Sub

e Sub Toolbar1_ButtonClick(ByV al Button As

)

Select Case

Case 1

lor = vbRed

Case 2

lor = vbGreen

Case 3

lor = vbBlue

End Select

End Sub

四、编程及上机调试

e Sub Picture1_MouseMove(Button As Integer, Shift As

Integer, _

X As Single, Y As Single)

If Button = 1 Then

(X, Y)

(1) = "X=" & X

(2) = "Y=" & Y

End If

End Sub

e Sub Command1_Click()

me = ""

r = "D:"

= "Word Files|*.doc|文本文件|*.Txt" '设置过滤器

Title = "打开文件" '设置打开对话框的标题 = 1 '创建"打开"对话框If me =

"" Then '判断文件名是否为空MsgBox "没有选择文件", 37, "检查" '若为空,则显示信息Else

Open me For Input As #1 '打开选定的文件

Do While Not EOF(1)

Line Input #1, a$ '读文件的一行

Text1 = Text1 & a$ & vbCrLf '输出所读的内容Loop

End If

End Sub

Private Sub Command2_Click()

= 3 '列出打印机和屏幕字体

= 4 '打开"字体"对话框

me = me '改变文本框的字体

ze = ze

ld = ld

alic = alic

derline = derline End Sub

Private Sub Command3_Click()

End

End Sub

11章略

大学计算机VB程序设计教程课后答案

本文发布于:2024-02-04 10:11:50,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170701271053251.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数组   元素   打开   按钮   窗体   字体   对话框   文件
留言与评论(共有 0 条评论)
   
验证码:
排行榜

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23