计算机二级

下列程序段的输出结果是( )。Clearstore 10to astore 20to bset udfparms to referencedo Swap with a,(b)?a,bprocedure swapparameters x1,x2temp=x1xl=x2x2=tempendprocA)2010B)1010C)2020D)1020

题目

下列程序段的输出结果是( )。

Clear

store 10to a

store 20to b

set udfparms to reference

do Swap with a,(b)

?a,b

procedure swap

parameters x1,x2

temp=x1

xl=x2

x2=temp

endproc

A)2010

B)1010

C)2020

D)1020

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列程序段的输出结果是【15】 。

cout<


正确答案:
509. 123457

第2题:

下列程序段的输出结果是()。

A.7

B.8

C.9

D.10


正确答案:D

第3题:

下列程序段的输出结果是 CLEAR STORE 10 TO A STORE 20 TO B SET UDFPARMS TO REFERENCE DO SWAP WITH A,(

A.10 20

B.20 20

C.20 10

D.10 10


正确答案:B
解析:本题考查参数传递以及模块的调用。命令SET UDFPARAMS TO REFERENCE用来设置参数传递方式为按引用传递。也就是说,当形参变量值改变时,实参变量也要随之改变。但是由于本题采用的调用方式是:DOWITH,所以调用方式不受参数UDFPARAMS的影响。调用过程中变量A是按引用传递,变量B用括号括起来,因此B始终是按值传递。模块SWAP的功能是将两个变量交换。程序开始时变量A和B的值分别为10和20,执行模块SWAP之后将A和B交换,由于变量A是按引用传递,因此交换后变量A指向B的地址,因此返回主程序后A的值为20,变量B为按值传递,模块结束后,其值仍为20,因此返回主程序后,变量A和B指向同‘个地址,其值均为200故选项B是正确答案。

第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题:

执行下列程序段后的输出结果是()。

A.3

B.2

C.1

D.4


正确答案:A

第6题:

下列程序段的输出结果是()CLEARSTORE“10”TOASTORE20TOB?A+B

A、1020

B、30

C、10

D、出错


参考答案:D

第7题:

下列程序段的输出结果是【 】。

cout << fixed<<509.123456789<<end1;


正确答案:123457
123457 解析:fixed的意义是在小数点后保留六位,所以 fixed输出为509.123457。

第8题:

如下程序的运行结果是【9】。

CLEAR

STORE 100 TO x1 x2

SET UDFPARMS TO VALUE

DO p4 WITH x1,(X2)

?x1.x2

*过程p4

PROCEDURE p4

PARAMETERS x1,X2

STORE x1+1 TO x1

STORE x2+1 TO x2

ENDPROC


正确答案:101 100
101 100 解析:SET UDFPARMS TO VALUE命令是设置参数传递的方式为按值传递,表示形参变量值的改变不会影响实参变量的取值;SET UDFPARMS TO REFERENCE命令是设置参数传递的方式为按引用传递,形参变量值改变时,实参变量值也随之改变。
程序首先给x1和x2赋初值100。
DO p4 WITH x1,(x2)命令是调用p4模块程序,用此命令调用模块程序时的参数传递方式并不受UDFPARMS值的设置的影响,其中,实参x1是变量,虽然设置了参数传递的方式为按值传递,但变量还是会按引用传递,传递的不是变量的值,而是变量的地址,在模块程序中对形参变量值的改变,同样是对实参变量值的改变,但用一对圆括号将一个变量括起来使其变成一般形式的表达式时,不管什么情况,总是按值传递,所以x2、的值是不变的,即还是100。
在p4模块程序中,PARAMETERS x1,x2命令是建立私有变量x1和x2,然后利用STORE赋值命令重新给x1和x2赋值为x+1,此时x1和x2的值都是101。
调用模块程序时,系统自动把实参x1的地址传递给对应的形参x1,当形参x1重新赋值为101后,实参的值也会相应的变为101,而x2因加了括号,成为了一般形式的表达式,不管什么情况,总是按值传递,x2的值不变,还是100,故本题答案为101 100。

第9题:

执行下列命令,正确的输出结果是( )。 STORE—123.456 TO NUM?”NUM=”+STR(NUM,8,3)A.123.456SXB

执行下列命令,正确的输出结果是( )。 STORE—123.456 TO NUM?”NUM=”+STR(NUM,8,3)

A.123.456

B.—123.456

C.NUM=—123.456

D.NUM=123.456


正确答案:C
STORE的功能是给内存变量赋值,STR函数的功能则是将数值转换成字符,转换时自动四舍五人。本题要求返回的字符串的理想长度为B个字符,保蹿3位小数,所以正确答案为C选项。

第10题:

下列程序段的输出结果是CLEARSTORESTORE 10 TO ASTORE 10 TO BSET UDFPARMS TO REFERENCEDO SWAP WITH A,(B)?A , BPROCEDURE SWAPPARAMETERS X1 , X2TEMP=X1X1=X2X2=TEMPENDPROCA)10 20 B)20 20 C)20、10 D)10 10


正确答案:B
本题考查参数传递以及模块的调用。命令SET UDFPARAMS TOREFERENCE用来设置参数传递方式为按引用传递。也就是说,当形参变量值改变时,实参变量也要随之改变。但是由于本题采用的调用方式是:DOWITH,所以调用方式不受参数UDFPARAMS的影响。调用过程中变量A是按引用传递,变量B用括号括起来,因此B始终是按值传递。模块SWAP的功能是将两个变量交换。程序开始时变量A和B的值分别为10和20,执行模块SWAP之后将A和B交换,由于变量A是按引用传递,因此交换后变量A指向B的地址,因此返回主程序后A的值为20,变量B为按值传递,模块结束后,其值仍为20,因此返回主程序后,变量A和B指向同一个地址,其值均为20。故选项B是正确答案。

更多相关问题