某人编写了如下程序,用来求10个整数(整数从键盘输入)中的最大值: Private Sub Command1_Click()   Dim a(10)As Integer, max As Integer   For k=1 To 10     a(k)=In

admin2018-12-20  11

问题 某人编写了如下程序,用来求10个整数(整数从键盘输入)中的最大值:
Private Sub Command1_Click()
  Dim a(10)As Integer, max As Integer
  For k=1 To 10
    a(k)=InputBox("输入一个整数")
  Next k
  max=0
  For k=1 To 10
    If a(k)>max Then
      max=a(k)
    End If
  Next k
  Print max
End Sub
运行程序时发现,当输入10个正数时,可以得到正确结果,但输入10个负数时结果是错误的,程序需要修改。下面的修改中可以得到正确运行结果的是(  )。

选项 A、把If a(k)>max Then改为If a(k)B、把max=a(k)改为a(k)=max
C、把第2个循环语句For k=1 To 10改为For k=2 To 10
D、把max=0改为max=a(10)

答案D

解析 程序中把变量max的初始值设置为0,没有考虑到负数的情况。应该把它的初始值设置为数组中的一个元素的值,然后让数组中的各个元素与这个值比较,如果比它大,就替换变量max的值,这样才能得到数组中的最大值。因此要修改max=0这一行。
转载请注明原文地址:https://kaotiyun.com/show/A8Fp777K
0

最新回复(0)