为计算1+2+22+23+24+…+210的值,并把结果显示在文本框Text1中,若编写如下事件过程: Private Sub Command1 Click() Dim a&,s&,k& s=1 a=2 For k=

admin2018-07-11  24

问题 为计算1+2+22+23+24+…+210的值,并把结果显示在文本框Text1中,若编写如下事件过程:
    Private Sub Command1 Click()
    Dim a&,s&,k&
    s=1
    a=2
    For k=2 To 10
    a=a*2
    s=s+a
    Next k
    Text1.Text=s
    End Sub
    执行此事件过程后发现结果是错误的,为能够得到正确结果,应做的修改是(    )。

选项 A、把s=1改为s=0
B、把For k=2 To 10改为For k=1 To 10
C、交换语句s=s+a和a=a*2的顺序
D、把For k=2 To 10改为For k=1 To 10、交换语句s=s+a和a=a*2的顺序

答案D

解析 程序应该计算的是2的0次方到2的10次方的和,程序少计算了2的1次方,应该先累加,再执行a=a*2。并且将For k=2 to 10改为For k=1 to 10,这样最后一次循环2的10次方的值能正确累加,然后循环结束。因此答案为D。
转载请注明原文地址:https://jikaoti.com/ti/gMy0FFFM
0

最新回复(0)