单选题 [程序]
CLEAR
PUBLIC X,Y
X=100
Y=200
DO GC1
? X,Y
K=300
DO GC2
? Y,K
SET TALK ON
PROC GC1
PRIVATE Y
Y=3
DO GC3
X=X*Y
RETURN
PROC GC3
Y=2
RETURN
PROC GC2
K=K+Y
DO GC3
K=K+Y
RETURN
单选题 X的输出结果为______。
【正确答案】 B
【答案解析】
单选题 第一次Y的输出结果为______。
【正确答案】 B
【答案解析】[解析] X、Y初值分别是100、200,执行DO GC1,调过程GC1,此时X=100,Y=3,执行DO GC3,调用过程GC3,执行Y=2,返回GC1过程,此时Y已变成2,所以执行X=x*Y=100*2=200,返回主程序,输出X值为200,又因过程GC1中Y是私有变量,其值的变化不影响主程序中的同名变量Y,所以主程序中第一次输出Y值为200。
单选题 第二次Y的输出结果为______。
【正确答案】 D
【答案解析】
单选题 K的输出结果为______。
【正确答案】 C
【答案解析】[解析] K的初值为300,执行DO GC2,调用过程GC2,执行K=K+Y=300+200=500,执行DOGC3,调用过程GC3,Y=2,返回过程GC2,执行K=K+Y=500+2=502,最后返回主程序,第二次输出Y值为2,输出K值为502。