单选题 要求产生10个随机整数,存放在数组arr中。从键盘输入要删除的数组元素的下标,将该元素中的数据删除,后面元素中的数据依次前移,并显示删除后剩余的数据。现有如下程序:
Option Base 1
Private Sub Command1_Click()
Dim arr(10)As Integer
For i=1 To 10 "循环1
arr(i)=Int(Rnd*100)
Print arr(i);
Next
x=Input("输入1-10的一个整数:")
For i=x+1 To 10 "循环2
arr(i-1)=arr(i)
Next
For i=1 To 10 "循环3
Print arr(i);
Next
End Sub
程序运行后发现显示的结果不正确,应该进行的修改是______。
【正确答案】 D
【答案解析】[解析] 删除一个数据后,数组中实际有效的值只剩9个。如果要删除的是第10个元素中的数组,则循环2不会执行,循环3中依然会输出第10个元素;如果删除的第x(x<10)个元素中的数据,则第x个元素中的数据用地x+1个元素中的数据替换,依此类椎,第9个元素中的数据用地10个元素中的数据替换,最后一个数据时重复的。通过上述分析可见,最后一个元素中的数据是多余的,不能输出,循环3的循环终值应该为9。