单选题 [程序]
SET TALK OFF
CLEAR
val1=10
val2=15
DO P1
? val1, val2
SET TALK ON
RETURN
PROCEDURE P1
PRIVATE val1
val1=50
val2=100
? val1, val2
RETURN
单选题 第一次val1, val2的输出结果分别为______。
【正确答案】 A
【答案解析】
单选题 第二次val1,val2的输出结果分别为______。
【正确答案】 B
【答案解析】[解析] 调用子程序P1时,就输出val1,val2,之后再输出主程序的val1,val2,所以第一次输出结果应为子程序中的val1,vat2,第二次输出主程序中的变量。在子程序P1中,定义了一个私有的与主程序中同名的变量val1,第一次输出val1,val2分别为50,100。执行完子程序,返回主程序。子程序中的私有变量val1值的改变不影响主程序中的val1,而自然属性变量val2随着子程序中同名val2值的改变而改变。所以第二次输出val1,val2分别为10,100。
单选题 若在子程序中PRIVATE val1后加一条语句PRIVATE val2,则第一次val1, val2的输出结果分别为______。
【正确答案】 A
【答案解析】
单选题 若在子程序中PRIVATE val1后加一条语句PRIVATE val2,则第二次val1, val2的输出结果分别为______。
【正确答案】 D
【答案解析】[解析] 子程序中变量val1和vat2都为私有变量,在子程序输出时val1和val2分别50,100,但在主程序中的val1和val2的值不随子程序中同名变量val1和val2的改变而改变,所以第二次输出val1和val2的值分别为10,15。