可视化编程(VB) 第8章~第10章补充习题(2)

2019-03-11 15:02

n=4 s=5 n=10 s=15 n=20 s=35

12.编写VB程序,计算S=2+(2+4)+(2+4+6)+?+(2+4+6+8+?+50)之值。 Private Sub Form_DblClick() Dim n%, i%, s%

For i = 2 To 50 Step 2 s = s + i n = n + s Next Print n

End Sub

13.用循环结构编写VB程序,输出下述五阶方阵:

1 2 3 4 5 2 3 4 5 1 3 4 5 1 2 4 5 1 2 3 5 1 2 3 4

Private Sub Form_DblClick() Dim i, j, k, n As Integer

n = InputBox(\请输入有多少行\ For i = 1 To n

For j = i To 5 j = Format(j, \ Print \ Next j

For k = 1 To i-1 k = Format(k, \ Print \ Next k Print Next i End Sub

第 6 页 共 15 页

第9章 数组

补充作业题

1.Dim B120(10 T0 20) 所定义的数组元素个数是 A 。 A.11 B.20 C.30 D.10 2.Dim Abc(5) 所定义的数组元素个数是__B_____。

A.5 B.6 C.4 D.10 3.有如下程序: Option Base 1

Private Sub form_click() Dim a(3, 3) For j = 1 To 3 For k = 1 To 3

If j = k Then a(j, k) = 1 If j < k Then a(j, k) = 2 If j > k Then a(j, k) = 3 Next k Next j

For I = 1 To 3 For j = 1 To 3 Print a(I, j); Next j Print Next I End Sub

程序运行时输出的结果是___B____。 A.1 3 3 B.1 2 2

2 1 3 3 1 2 2 2 1 3 3 1 C.2 3 3 D. 2 1 1 1 2 3 3 2 1 1 1 2 3 3 2 4.有如下程序: Option Explicit Option Base 1

Dim a() As Integer

Private Sub form_click()

Dim I As Integer, j As Integer ReDim a(3, 2) For I = 1 To 3 For j = 1 To 2

a(I, j) = I * 2 + j

Print \

第 7 页 共 15 页

Next j Print Next I End Sub

该程序的输出结果是__D_____。

A.a(0,0)=3 a(0,1)=4 B.a(1,1)=2 a(1,2)=3

a(1,0)=5 a(1,1)=6 a(2,1)=3 a(2,2)=4 a(2,0)=7 a(2,1)=8 a(3,1)=4 a(3,2)=5 C.a(1,1)=3 a(1,2)=5 D.a(1,1)=3 a(1,2)=4

a(2,1)=4 a(2,2)=6 a(2,1)=5 a(2,2)=6 a(3,1)=5 a(3,2)=7 a(3,1)=7 a(3,2)=8

5.有如下程序: Option Base 1

Private Sub form_click() Dim A(10)

For K = 1 To 10 A(K) = K ^ 2

Next K

Print A(K) End Sub

程序运行后输出的结果是__错误__。

6.在给定程序的功能是建立并输出除主、副对角线上的元素为0外,其余元素都为1的方阵,在画线处填入适当内容,将程序补充完整。 Private Sub command1_click() Dim a(10, 10) 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____ Next j

Next I

For I = 1 To 10 For j = 1 To 10 Print a(I, j); Next j Print Next I End Sub 7.下面程序的功能是分别计算给定的10个数中正数之各与负数之和,最后输出这两个和数的绝对值之商。请在画线处填入适当的内容,将程序补充完整。 Option Base 1

第 8 页 共 15 页

Private Sub command1_click() Dim A

A = Array(23, -5, 17, 38, -31, 46, 11, 8, 5, -4) S1 = 0 S2 = 0

For k = 1 To 10

If (A(k) > 0) Then S1=__S1+A(k)__ Else

S2=__S2 +A(k)__ End If Next k

x = Abs(S1) / Abs(S2) Print x End Sub

8.下面的程序是用选择交换法将10个数排成升序,请在画线处填入适当内容,将程序补充完整。 Option Base 1

Private Sub command1_click() Dim arr

arr = Array(123, 96, 42, 39, 22, 14, 7, 4, 0, -7) Print “data before sorting:” For I = 1 To 10 Print arr(I);

Next I Print

For I= 1_To 10_______ k = I

For j=_ I+1 To 10__________

If arr(k)>arr(j) then a=arr(k)_ arr(k) =arr(j)_ arr(j)=a____ Next j

If k <> I Then w = arr(k)

arr(k) = arr(I) arr(I) = w End If

Next I

Print “data after sorting;” For I = 1 To 10 Print arr(I);

Next I Print End Sub

第 9 页 共 15 页

9.写出下列程序的计算机运行结果: Private Sub Command1_Click() Dim a(5, 5) As Integer For i = 1 To 5 For j = 1 To 5

a(i, j) = i + j - 1 Next j Next i

For i = 1 To 5 Print Tab(8);

For j = 5 To i Step -1 Print \ Next j

For k = 6 - i To 5 Print \ Next k Print Next i End Sub

5 5 6 5 6 7 5 6 7 8 5 6 7 8 9

10.编写VB程序,计算五阶方阵的两条主对角线元素之和。 Private Sub Form_DblClick()

Dim a(5, 5), s% For i = 1 To 5 For j = 1 To 5

a(i, j) = InputBox(\请输入元素值\ Print a(i, j) & \ Next j Print Next i

For i = 1 To 5 For j = 1 To 5

If i = j Or i + j = 6 Then s = s + a(i, j) End If Next j Next i Print s End Sub

第 10 页 共 15 页


可视化编程(VB) 第8章~第10章补充习题(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:金属学与热处理(哈尔滨工业大学 - 第二版)课后习题答案 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: