下列程序段执行以后,内存变量A和B的值是 ______。 CLEAR A=10 B=20 SET UDFPARMS TO REFERENCE DO SQ WITH(A) ,B &&参数A是值传送,B是引用传送 ?A,B PROCEDURE SQ PARAMETERS X1,Y1 X1=X1*X1 Y1=2*X1 ENDPROCA.10 200B.100 200C.100 20D.10 20

题目

下列程序段执行以后,内存变量A和B的值是 ______。 CLEAR A=10 B=20 SET UDFPARMS TO REFERENCE DO SQ WITH(A) ,B &&参数A是值传送,B是引用传送 ?A,B PROCEDURE SQ PARAMETERS X1,Y1 X1=X1*X1 Y1=2*X1 ENDPROC

A.10 200

B.100 200

C.100 20

D.10 20


相似考题
更多“下列程序段执行以后,内存变量A和B的值是 ______。CLEARA=10B=20SET UDFPARMS TO REFERENCEDO SQWI ”相关问题
  • 第1题:

    下列程序段执行以后,内存变量A和B的值是( )。 CLEAR A:5 B=20 SET UDFPARMS TO REFERENCE DO SQ WITH(A),B&&参数A是值传送,B是引用传送 ?A,B PROCEDURE SQ PARAMETERS X1,Y1 X1:X1*X1 Y1=2*X1 ENDPROC

    A. 5 50

    B. 25 50

    C. 25 10

    D. 5 20


    正确答案:A
    过程定义时,如果形式参数被说明为传值,则过程调用只是将相应位置实参的值传送给形参处理,而被调用过程内部对形参的任何操作引起的形参值的变化均不会反馈、影响实参的值。由于这个过程中,数据的传递只是单向的,故称为引用传送。反之,如果形式参数被说明为传址,则过程调用是将相应位置实参的地址传送给形参处理,而被调用过程内部对形参的任何操作引起的形参值的变化又会反向影响实参的值。在这个过程中,数据的传递具有双向性,故称为值传送。
    此题中参数A为值传送,即A最后的值也为5;参数B为引用传送,根据X1=X1*X1,Y1=2*X1得Y1值为50,即B的最终值。故本题答案为A。

  • 第2题:

    下列程序段执行以后,内存变量X和Y的值是( )。

    CLEAR

    STORE 3 TO X

    STORE 5 To Y

    PLUS((X),Y)

    ?X,Y

    PROCEDURE PLUS

    PARAMETERS Al,A2

    A1=Al+A2

    A2=Al+A2

    ENDPROC

    A.8 13

    B.3 13

    C.3 5

    D.8 5


    正确答案:C
    C。【解析】两个参数都是按值传递的,形参值的改变不会影响实参的值。

  • 第3题:

    执行下列程序段以后,内存变量a的内容是

    A.1
    B.3
    C.5
    D.7

    答案:C
    解析:
    成需求单价大于10元的股票数,从sk.dbf中可知,满足条件的有5项。

  • 第4题:

    下列程序段执行以后,内存变量A和B的值是( )。 CLEAR A=10 B=20 SET UDFPARMS TO REFERENCE DO SQ WITH(A),B ?A,B PROCEDURE SQ PARAMETERS Xl,YI X1=X1*X1 Y1=2*X1 ENDPROC ( )。

    A. 10 200

    B. 100 200

    C. 100 20

    D. 10 20


    正确答案:A
    Visual FoxPro的参数传递规则为:如果实际参数是常数或表达式则传值,如果实际参数是变量则传址,即传递的不是实参变量的值而是实参变量的地址,这样,过程中对形参变量值的改变也将使实参变量值改变。如果实参是内存变量而又希望进行值传递,可以用圆括号将该内存变量括起来,强制该变量以值方式传递数据。题目中参数A按值传递,参数B按引用传递。

  • 第5题:

    下列程序段执行以后,内存变量Y的值是( )。

    x=34567

    Y=0

    DOWHILE x>O

    y=x%10+y﹡10

    x=Int(x/10)

    ENDDO

    A)3456

    B)34567

    C)7654

    D)76543


    正确答案:D
    题目给出的程序段中,用到了DO WHILE…ENDD0循环结构。执行该语句时,先判断DO WHILE处的循环条件是否成立,如果条件为真,则执行DO WHILE和ENDDO之间的命令序列。当执行到ENDDO时,返回到DO WHILE,再次判断循环条件是否为真,以确定是否再次执行循环体。若条件为假,则结束该循环语句,执行ENDDO后面的语句。循环体中还用到了算术运算符%,%是求余运算。Int为取整数函数,返回指定数值表达式的整数部分。根据所给初值和循环条件,可以判断出第1次循环后3=7,x=3456,第2次后y=76,x=345,第3次后,3,=765,x=34,第4次后y=7654,x=3,第5次后y=76543,x=0,第6次对条件x>0进行判断,结果为假,故退出循环,执行结束,最终Y的值即为76543。