几道VB题不明白,请大家帮忙,还请解释一下为什么?

来源:百度知道 编辑:UC知道 时间:2024/05/31 05:21:18
选择1.下述程序的功能是()
x = "((a+B)*a)-(a*b+c)"
n = Len(x)
m = 0
For k = 1 To n
p$ = Mid(x, k, 1)
If p$ = "(" Then
m = m - 1
ElseIf p$ = ")" Then
m = m + 1
End If
If m > 0 Then
Print ":-P"
End If
Next k
Print ":-)"
A 统计输入的字符串中括号的总数
B 统计输入的字符串中匹配的括号的对数
C 检查输入的字符串的括号是否能够匹配
D 删除字符串的括号
答案是C
2.下列过程定义语句中,形参个数为不确定数量的过程是()
A private sub pro3(x as double,y as single)
B private sub pro3(arr(3),option x ,option y)
C private sub pro3(byrefx,byvaly,arr())
D private sub pro3(paramarray arr())
还有一道题
3.下面程序运行时,单击窗体后,窗体上显示的结果是()
Private Sub Form_Click()
dim i as integer
dim sum as long
Sum = 0
For i = 10 To 16
If i Mod 3 = 0 Or i Mod 5 = 0 Then
Sum = Sum + i
End If
Next i
Print Sum
End Sub
A 10 B 12 C 37 D22
答案是C

这些题的答案我都知道,可是不明白为什么?请解答,有满意答案可以追加

哈哈,我猜对了,第一个题排除法,不可能是a和d,要是总数就该都是m = m + 1,或者这里If p$ = "(" Then ,是If p$ = "(" or ")" Then ,根本没有删除语句,要是统计对数肯定不用这些语句(用什么还要翻书),所以就是c,很久没碰这些了有些语句都不知道什么意思了。
第二个,就算去贝,最开始不敢肯定mod是求余数,算出答案和镇答案一样,10/5余0,sum=10,12/3余0,sum=22,15/5余0,sum=37.应该是这样吧!

B