已知X=78,Y=-83,则[X+Y]<sub>补</sub>=

题目

已知X=78,Y=-83,则[X+Y]=()。

  • A、0F5H
  • B、0A1H
  • C、0FBH
  • D、65H
参考答案和解析
正确答案:C
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

(13)单击命令按钮时,下列程度的执行结果是 Private Sub Command1_Click() Dim a As Integer,b As Integer,c As Integer a=2:b=4:c=6 Call S2(a,b) Print"a=";a;"b=";b;"c=";c; End Sub Private Sub S1(x As Integer,y As Integer) Dim c As Integer x=2*x:y=y+2:e=x+y End Sub Sub S2(x As Integer,By Val y As Integer) Dim e As Integer x=2*x:y=y+2:e=x+y End Sub A.a=4 b=6 c=6 B.a=8 b=6 c=6 a=4 b=6 c=6 a=8 b=6 c=6 C.a=4 b=6 c=6 D.a=8 b=6 c=6 a=8 b=6 c=6 a=4 b=6 c=6


正确答案:C
【解析】在定义子过程的参数时,如果在参数前加上ByVal,表示是“传值”参数,主调函数中参数的值不被改变;否则表示是“传地址”参数,参数值会被调用的子过程改变。
题中S1过程的参数是“传地址”,因此调用后a、b、c的值都改变了,分别为4、6、6;S2过程的参数中a是“传地址”参数,b是“传值”参数,因此调用后a值改变,b值不变,因为。是过程变量,所以也没有变化,因此输出的值为8、6、6。

第2题:

下面各被调用函数首部书写正确的是( )

A.void sub(float x;float y);

B.void sub(float x,y)

C.void sub(float x,float y)

D.void sub(float x,float y);


正确答案:C

第3题:

在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程: Private Sub subl(ByVal x As Integer, ByVal y As Integer, ByVal z As Integer) z=x*x+y*y End Sub Private Sub Command1_Click() Dim a As Integer a=8 Call subl(1, 2,a) Print a End Sub 程序运行后,单击命令按钮,则窗体下显示的内容是______。

A.8

B.2

C.5

D.11


正确答案:A
解析:因为Subl过程的形参都是传值传送,所以在其内的所有计算结果都不将返回,并不影响对应的实参值,变量a的值并没有改变,仍然是8。

第4题:

单击命令按钮,下列事件过程的执行结果为 Private Sub Command1_Click( ) Dim x As Integer, y As Integer x=40:y=72 Call PtoP(x, y) Print x; y End Sub Public Sub PtoP(Byval n AS Integer, ByVal m Aa Integer) n = n \ 10+2 m = m \ 10+2 End Sub

A.0 8

B.40 72

C.4 50

D.78 50


正确答案:B
解析:此题是函数过程的调用。在调用过程时,一般主调与被调过程之间有数据传递,即将主调过程的实参传递给被调用的过程,完成实参与形参的结合,然后执行被调过程,在VisualBasic中,实参与形参的结合有两种方式:即传址与传值。这两种方法的特点如下:传址的结合过程是,当调用一个过程时,它将实参的地址传给形参,因此在被调用的过程中,对形参的任何操作都变成了对相应实参的操作,因此实参的值会随形参的改变而改变。传值的结合过程是,当调用一个过程时,系统将实参的值复制给形参并断开了联系,被调用过程中的操作是在形参自己的存储单元中进行的,当过程调用结束时,这些形参所占用的存储单元也同时被释放,因此在过程中对形参的任何操作不会影响实参。而题中被调过程PtoP中有两个形参,两者均为传值方式。主调过程分别把实参x、y传递给PtoP,所以当过程调用结束后,实参x、y的值都没有改变,最后输出的值应为4072。

第5题:

单击按钮时,以下程序运行后的输出结果是 Private Sub proc1(x As Integer,y As Integer,z As Integer) x=3*z y=2*z z=x+y End Sub Private Sub Command1_Click() Dim x As Integer,y As Integer,Z As Integer x=1:y=2:z=3 Call proc1(x,x,z) Print x;x;z Call proc1(x,y,y) Print x;y;y End Sub

A.6 6 12 `

B.9 5 10 6101051010

C.9 6 12

D.9 10 10 910155410


正确答案:A
解析:从整体上看,可得主调过程将两次调用过程Proc1后,实参的值将随形参变化而变化,现在分析一下这两次调用实参和形参是怎么变化的。第一次调用被调过程proc1,主调过程把实参x,x,z的地址分别传给形参x,y,z,此时形参x,y,z值分别为1,1,3,执行语句x=3*z后,形参x值变为9,此时相对应的实参x也变为9,执行语句y=2*z后,形参y值变为6,则相对应的实参x值变为6。执行x=x+y后,形参z值应为12,当然这次调用后,程序代码输出的数值为6,6,12;第二次调用被调过程proc1,主调过程把实参x,x,z的地址分别传给形参x,y,z。我们应注意一下,此时实参x的值为6而不是1,所以此时形参x,y,z值分别为6,2和2,执行语句x=3*z后,形参x值为6,相对实参x值也相应的变为6。执行语句y=2*z后,形参y值变为4,相应的实参y值也变为4,执行z=x+y后,形参z值变为10,相应的实参y的值变为10,而形参y和x的地址相同,最后它们值都应为10,所以此次调用后,程序代码将输出的数值为6,10和10。

第6题:

以下过程的定义中,( )是错误的。

A、Public Sub Sum(x ; y)

B、Public Sub Sum(ByVal x, ByVal y)

C、Public Sub Sum(x As Integer,y As Integer)

D、Public Sub Sum(x%, y%)


参考答案:A

第7题:

在窗体上画一个命令按钮,然后编写如下事件过程:

Private Sub Command1_Click()

X=0

Do While X<>-1

X=Val(InputBox("请输入数据X:"))

Y=Val(InputBox("请输入数据Y:"))

If X*Y<X+Y Then Print X,Y

Loop

End Sub

程序运行后,依次输入7,2,-3,8,-5,-10,18,-1,-1,则输出结果是【 】


正确答案:-3 8 18 -15
-3 8 18 -15 解析:本题程序运行后,共输入5组数据,x依次取值为7、-3、-5、18、-1,Y依次取值为 2、8、-10、-15、-1。只有满足X * YX+Y时,才输出X、Y的值。循环的结束条件是“X= -1,Y=-1”。

第8题:

设有下列过程: Sub ff(x,y,z) X=y+z End Sub 下列选项中所有参数的虚实结合都是传址方式调用的是 A.Call ff(5,7.z) B.Call ff(x,y.z)C.Call ff(3+X,5+Y,z) D.Call ff(x+y,x-y,z)


正确答案:B
【解析】参数可以是常量、变量、表达式、数组等。如果是变量则可能是传值方式也可能是传地址方式,默认为传地址方式,如果用ByVal修饰则说明是传值方式,而数组是传地址方式,常量、表达式则是传值方式。

第9题:

有如下过程:

Sub SS(ByVal X,ByRef Y,Z)

X=X + 1

Y=Y + 1

Z=Z + 1

End Sub

执行该过程的事件过程如下:

Private Sub Command1_Click()

A = 1

B = 2

C = 3

Call SS(A,B,C) Print A;B;C

End Sub

则该程序的执行结果是【 】。


正确答案:1 3 4
1 3 4

第10题:

单击命令按钮时,下列程序段的执行结果为( )。 Private Sub Command1_Click() Dim a As Integer, b As Integer, c As Integer a-2:b=4:c=6 Call S1(a,b)Print "a="; a; "b="; b; "c="; c Call S2(a,b)Print "a ="; a; "b="; b; "c="; c; End Sub Private Sub S1(x As Integer, y As Integer) Dim c As Integer x=2*x:y=y+2:c=x+y End Sub Sub S2(x As Integer, ByVal y As Integer) Dim e As Integer x=2*x:y=y+2:e=x+y End Sub

A.a=4 b=6 c=6 a=4 b=6 c=6

B.a=8 b=6 c=6 a=8 b=6 c=6

C.a=4 b=6 c=6 a=8 b=6 c=6

D.a=8 b=6 c=6 a=4 b=6 c=6


正确答案:C
解析:在定义子过程的参数时,如果在参数前加上ByVal,表示是“传值”参数,主调函数中参数的值不被改变,否则表示是“传地址”参数,参数值会被调用的子过程改变。题中S1过程的参数是“传地址”,因此调用后a、b、c的值都改变了,分别为4、6、6;S2过程的参数中a是“传地址”参数,b是“传值”参数,因此调用后:值改变,b值不变,因为c是过程变量,所以也没有变化,因此输出的值为8、6、6。

更多相关问题