柠檬试题库
search
首页 计算机 公务员 驾照 关于

设有如下事件过程:Private Sub Command1_Click() Dim a a=Array(12, 3, 8, 5, 10, 3, 5, 9, 2, 4) For k=1 To 9 Print fun(a(k-1), a(k)); " "; Next kEnd SubPrivate Function fun(x, y)As Integer Do While x>=y x=x-y Loop fun=xEnd Function程序运行时的输出结果是( )。


  • A.4 0 1 0 3 0 0 4 0
  • B.0 3 3 5 1 3 5 1 2
  • C.9 -5 3 -5 7 -2 -4 7-2
  • D.9 3 3 5 7 3 5 7 2
热度🔥638
参考答案:B
解析:

【解析】数组默认下标为0,因此数组a中的元素a(0)=12,a(1)=3,a(2)=8,a(3)=5,a(4)=10,a(5)=3,a(6)=5,a(7)=9,a(8)=2,a(9)=4。k=1时,fun(a(k-1),a(k))即fun(a(0),a(1)),即fun(12,3),过程中x=x-y=12-3=9-3=6-3=3-3=0,函数返回0;k=2时,fun(a(k-1),a(k))即fun(a(1),a(2)),即fun(3,8),x>=y不成立,函数直接返回3;k=3时,fun(a(k-1),a(k))即fun(a(2),a(3)),即fun(8,5),过程中x=x-y=8-5=3,函数返回3;k=4时,fun(a(k-1),a(k))即fun(a(3),a(4)),即fun(5,10),x>=y不成立,函数直接返回5;k=5时,fun(a(k-1),a(k))即fun(a(4),a(5)),即fun(10,3),过程中x=x-y=10-3=7-3=4-3=1,函数返回1;k=6时,fun(a(k-1),a(k))即fun(a(5),a(6)),即fun(3,5),x>=y不成立,函数直接返回3;k=7时,fun(a(k-1),a(k))即fun(a(6),a(7)),即fun(5,9),x>=y不成立,函数直接返回5;k=8时,fun(a(k-1),a(k))即fun(a(7),a(8)),即fun(9,2),过程中x=x-y=9-2=7-2=5-2=3-2=1,函数返回1;k=9时,fun(a(k-1),a(k))即fun(a(8),a(9)),即fun(2,4),x>=y不成立,函数直接返回2;因此程序输出0 3 3 5 1 3 5 1 2 。
复制题目向AI提问