VB练习题

更新时间:2024-02-03 09:38:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1.下列的逻辑表达式中不正确的是(x

3.执行下面的程序段后,x的值为(21). x=5 For i=1 To 20 Step 2 x=x+i\\5 Next i

解答:5+1\\5+3\\5+5\\5+7\\5+...19\\5=21

4.欲使标签的内容自动换行,必须设置属性(WordWrap).

5.表达式 15 Mod 4 + 13 \\ 5 * 2 的值是(4) 6.表达式4+5 \\ 6 * 7 / 8 Mod 9 的值是(5). 解答:4+5\\6*7/8Mod9

=4+5\\42/8Mod9说明:先计算6*7=42 =4+5\\(5.25)Mod9说明:再计算42/8=5.25 =4+5\\5Mod9说明:下一步计算5\\5.25,在计算之前先把小数取成整数,即把5\\5.25舍成5\\5

=4+1Mod9说明:下一步计算5\\5=1 =4+1说明:下一步计算1Mod9=1 =5说明:最后一步计算4+1=5,即最终结果。 7.若要禁止窗体被用户移动,通过设置可达此要求的窗体的属性是(controlbox).

8.表达式(-1)*Sgn(-100+Int(Rnd*100))的值是(1).

解答:Rnd*100是取0~100的小数 Int(Rnd*100)是对0~100的小数去整,结果是0~99的整数

(-100+Int(Rnd*100)得数一定是负数

Sgn(-100+Int(Rnd*100))得数为-1 'Sgn函数,当参数大于0事返回1,参数小于0时返回-1,参数等于0时返回0

(-1)*Sgn(-100+Int(Rnd*100))的值是1 9.假定时钟控件的Interval属性为1000,Enabled属性为True,并且有下面的事件过程,

计算机将发出Beep声的次数是(以上都不对)

10.设a=10,b=5,c=1,执行语句Print a>b>c后,窗体上显示的是(false).

解答:false .我来补充了。运算的时候只这样的:先算a>b,即:10>5 结果为true 也就是-1 再算-1>c 即-1>1 结果自然就是false了

11.表达式X+1>X是(关系表达式).

12.在逐行运行程序的语句时,可用调试窗口监视表达式和变量的值,

其中(立即)窗口是用来显示代码中正在调试的语句所产生的信息,

或显示直接在该窗口中键入的命令所请求的信息.

13.在设计阶段,双击窗体Form1的空白处,打开代码窗口,显示(Form-load)事件过程模板. 14.如果Forml是启动窗体,并且Forml的load事件过程中有form2.show,则程序启动后(,在所有初始化代码运行后Forml是活动窗体)

15.下面关于顺序文件的描述正确的是(数据只能以ASCII码形式存放文件中,所以以通过文本编辑软件显示) 16.如下程序:

Private Sub Command1_Click() Print p1(3,7) End Sub

Public function p1!(x!,n%) If n=0 Then P1=1 Else

If n Mod 2=1 Then P1=x*p1(x,n\\2) Else

Pl=pl(x,n\\2)\\x End If End If

End Function

运行的结果是(27)

解答:开始 7 Mod 2 = 1 所以 p1 = 3 * ①p1(3,7\\ 2) ①=p1(3,3)

3 Mod 2 = 1 所以 p1 = 3 * ②p1(3,3\\ 2) ②=p1(3,1)

1 mod 2=1 所以 p1=3*③p1(3,1\\2) ③=p1(3,0)

n=0 所以 p1=1,循环结束 返回③=1 返回②=3*1 返回①=3*3*1 最终值=3*3*3*1

圆圈里面的数字就是p1(.)这个函数 17.下面过程运行后显示的结果是()下面过程运行后显示结果是(2 34 )。Public

Sub F1(n%,ByVal m%) N=n Mod 10 m=m\\10 End sub

Private Sub Command1_Click() Dim x %,y% x=12:y=34 call F1(x,y) Print x,y End Sub

18.设执行以下程序段时依次输入11、33、55,执行结果为(11)

Dim a(4) As Integer, b(4) As Integer

For K = 0 To 2

a(K + 1) = Val(InputBox(\请输入数据\

b(3 - K) = a(K + 1)

Next K

Print b(K)

19.'【程序设计】

'题目:对字符串进行加密处理。

' 加密过程:

' 将每个字母C减一序数K=5,即 c=chr(Asc(c)-5), ' 这时 \→\, \→\,\→\… ' 当减序数后的字母小于\或\则 c=Chr(Asc(c)-k +26) 解答:Dim i As Integer

Dim strp As String, strT As String, iA As String

Dim nl As String i = 1: strp = \ nl = Len(RTrim(strI)) Do While (i <= nl)

strT = Mid$(strI, i, 1) '取第i个字符

If (strT >= \Then

iA = Asc(strT) + 5

If iA > Asc(\Then iA = iA - 26

strp = strp + Chr$(iA)

ElseIf (strT >= \And strT <= \Then

iA = Asc(strT) + 5

If iA > Asc(\iA - 26

strp = strp + Chr$(iA) Else

strp = strp + strT End If i = i + 1 Loop

EnyStr = strp

20.题目:编程求一个十进制整数n的各位数字之和,设n为小于或等于5位的数。

'要求:①不得添加任何变量;不得删除或添加行;不得更改行的顺序

' ②只更改\标记下的第一行

'------------------------------------------------

Private Sub Form_Click()

Dim N As Integer, Sum As Integer, S1 As String, S2 As String

Dim i As Integer, Ch As String Sum = 0

N = InputBox(\输入整数n\ S1 = Str(N)

'**********ERROR********** S1 = RTrim(S1)

For i = 1 To Len(S1)

'**********ERROR********** Ch = Mid(N, i, 1)

'**********ERROR********** Sum = Val(Ch)

Next i

Print \该整数的各位数之和是:\Sum

End Sub

答案Sum = Sum + Val(Ch)

Sum =Val(Ch)+Sum 21. '题目:用自定义函数的方法求sum(x),求当-1≤x≤1时,

' sum(x)=x/2!+x^2/3!+x^3/4!+……+x^n/(n+1)!,

' 当x〉1或x〈-1时,函数值为0。当n〈=0时,输入数

' 据错误。X、N都是由用户输入。

'要求:①不得添加任何变量;不得删除或添加行;不得更改行的顺序

' ②只更改\标记下的第一行

'------------------------------------------------

Private Sub Command1_Click() Dim s As Single

Dim n As Integer, x As Single, k As Integer

n = Val(InputBox(\integer value:\

x = Val(InputBox(\single value:\

If n <= 0 Then

k = MsgBox(\数据输入错误!\数据输入\

Exit Sub

End If

s = Sum(x, n) Print s End Sub

Function Sum(x As Single, n As Integer)

Dim i As Integer, ss As Long ss = 1 Sum = 0

If x > 1 Or x < -1 Then

'**********ERROR********** Exit Do Else

'**********ERROR********** For i = 2 To n ss = ss * i

'**********ERROR**********

Sum = x ^ (i - 1) / ss Next i

End If End Function 【学生答案】

Sum = x ^ (i - 1) / ss

【参考答案】

Sum = Sum + x ^ (i - 1) / ss

Sum = x ^ (i - 1) / ss+Sum

本文来源:https://www.bwwdw.com/article/4atw.html

Top