在窗体上画一个名称为Command1的命令按钮,编写如下程序代码: Option Base 1 Private Sub Command1_Click() Dim n As Long Dim m As Integer

admin2020-06-30  35

问题 在窗体上画一个名称为Command1的命令按钮,编写如下程序代码:
    Option Base 1
    Private Sub Command1_Click()
    Dim n As Long
    Dim m As Integer
    Dim x As Integer,i As Integer
    Dim nums()As Integer
    n=CLng(Val(InputBox("输入一个正整数","输入")))
    m=Len(Trim(Str(n)))
    ReDim Bum8(m)
    For i=m To 1 Step—1
    nums(i)=n  10^(i—1)
    n=n—num$(i)*10^(i一1)
    Next i
    For i=m To 1 Step一1
    x=x+num$(i)
    Next i
    Print x
    End Sub
    程序运行时,单击命令按钮,在出现的输入对话框中输入“8356”,则输出结果是(    )。

选项 A、一6
B、6538
C、8356
D、22

答案D

解析 程序开始前使用Option Base 1语句,表示数组下标从1开始。在过程Command1_Click中定义了动态数组nums,通过lnputBox函数输入一个正整数赋值给n,n=8356;str(n)可以将n转换为字符串,通过Len函数测量字符串的长度,然后赋值给变量m,m=4。通过ReDim语句给动态数组nums重新分配空间,nums是一个可以包含4个元素的一维整型数组。第一个for循环的功能是:将整数n的千位数赋值给nums(1),将整数n的百位数赋值给nums(2),将整数n的十位数赋值给nums(3),将整数n的个位数赋值给hums(4),所以循环结束后nilms(1)=8,nums(2)=3,nums(3)=5,hums(4)=6。后一个For循环的功能是:将hums数组中的所有元素累和,并将结果赋值给变量x,x=8+3+5+6=22,最后输出x的值。故本题D选项正确。本题选择D选项。
转载请注明原文地址:https://jikaoti.com/ti/0xS0FFFM
0

最新回复(0)