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

admin2020-08-10  32

问题 某人编写了如下程序,用来求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)<max Then
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/5lHp777K
0

最新回复(0)