问题 填空题

【说明8.1】
以下程序的功能是:生成20个200~300之间的随机整数,输出其中能被5整除的数并求出它们的和。
【程序代码8.1】
Private Sub Command1_Click()
For i=1 To 20
x=Int( (1) *200+100)
If (2) =0 Then
Print x
S=S+ (3)
End If
Next i
Print"Sum=";S
End Sub
【说明8.2】
程序8.2运行后,单击窗体,则在窗体上显示的内容是:a= (4) 和b= (5)
【程序代码8.2】
Private Sub Form_Click()
Dim a As Integer,b As Integer
a=20:b=50
p1 a,b
p2 a,b
p3 a,b
Print"a=";a,"b=";b
End Sub
Sub p1(x As Integer, ByValy As Integer)
x=x+l0
y=y+20
End Sub
Sub p2(ByVal×As Integer, y As Integer)
x=x+l0
y=y+20
End Sub
Sub p3(ByVal×As Integer, ByVal y As Integer)
x=x+10
y=y+20
End Sub

答案

参考答案:Rnd或Rnd(n),其中n为任意整数
(2)x Mod 5或Int(x/5)-x/5或x/5-Int(x/5)或CInt(x/5)-x/5或x/5-CInt(x/5)或Round(x/5)-x/5或x/5- Round(x/5)或x-(x\5)*5或(x\5)*5-x或Fix(x/5)-x/5或x/5-Fix(x-5)
(3)x (4)30 (5)70

解析: x用来存放200~300之间的随机整数,因此,赋给x的表达式是Int(Rnd*200+100),即(1)空填“Rnd”;下面的if语句用来判断能被5整除的数,因此(2)空填“x Mod 5”;S用来表示能被5整除数的累加和,因此(3)空填“x”。
程序5.2主要考过程参数的值参(传值)和变参(传地址)概念。参数前有Byval限定词表示参数传递是传值,否则是传地址。参数传递是传值时,被调过程不能改变主调过程的参数值;而参数传递是传地址时,被调过程改变主调过程的参数值。本题中,过程P1的第一个参数是传地址,它在过程中的变化将带到主调程序,而第二个参数是传值,当过程执行完后,主调过程的参数值不变,因此p1 a,b这条语句执行后,a的值是30,b的值是50;同理,语句p2 a,b执行后,a的值是30, b的值是70;语句p3 a,b执行后,a的值仍是30,b的值仍是70。

单项选择题
单项选择题