单选题
[程序]
* *TSET. PRG
a=5
b=6
c=7
DO SUB1
? "a2,b2,c2=",a,b,c
DO SUB2 WITH a+b,c,10
? "a3,b3,c3=",a,b,c
RETURN
* *SUB1. PRG
PRIVATE b,c
a=21
b=22
c=23
? "a1,b1,c1=",a,b,c
RETURN
DO SUB1
RETURN
* *SUB2. PRG
PARAMETER x,y,z
? "x,y,z=",x,y,z
x=31
y=32
z=33
单选题
输出语句? "a1,b1,c1=",a,b,c中a,b,c的结果分别为______。
【正确答案】
D
【答案解析】[解析] 调用DO SUB1时,SUB1中输出的a,b,c值应为本程序中a,b,c的值。
单选题
输出语句? "a2,b2,c2=",a,b,c中a,b,c的结果分别为______。
【正确答案】
D
【答案解析】[解析] 在SUB1中,重新定义了与TEST中重名的私有变量b,c,所以TEST中的b,c不随SUB1中b,c值的改变而改变,但TEST中的变量a已被SUB1中的a重新赋值为21。所以本小题输出a,b,c的结果分别为21,6,7。
单选题
x,y,z的输出结果分别为______。
【正确答案】
C
【答案解析】[解析] 由上一小题知a值为21,故a+b=27。调用SUB2时,把实参a+b,c,10传递给SUB2中的x,y,z,所以SUB2中输出x,y,z的值分别为27,7,10。
单选题
输出语句? "a3,b3,c3=",a,b,c中a,b,c的结果分别为______。
【正确答案】
A
【答案解析】[解析] 当调用完SUB2后,a,b的值不改变,而c的值随着SUB2中的y值而改变。所以本小题输出a,b,c的结果分别为21,6,32。