编写如下程序: Private Sub Commandl_Click() Dim strl As String,str2 As String strl=InputBox(“输入一个字符串”) subf st

admin2013-11-29  21

问题 编写如下程序:
    Private Sub Commandl_Click()
       Dim strl As String,str2 As String
       strl=InputBox(“输入一个字符串”)
       subf strl,str2
        Print str2
    End Sub
    Sub subf(sl As String,s2 As String)
        Dim temp As String
        Static i As Integer
        i=i+1
        temp=Mid(sl,i,1)
        If temp<>”“Then subf s1.s2
        s2=s2&temp
    End Sub
    程序运行后,单击命令按钮Commandl,且输入“abcdef”,则输出结果为(     )。

选项 A、atbecd
B、cdbeaf
C、fedcba
D、adbecf

答案C

解析 程序中过程subf的两个参数都默认按址传递,其内部定义的变量i为Static即静态变量,在过程调用时它会保留上次的值。这个过程的功能是通过递归调用自己依次取出参数1中即sl中的字符连接在S2的尾部,即使s1的字符串倒序后存入s2中。程序中输入了abcdef,则输出结果为fecdba。
转载请注明原文地址:https://jikaoti.com/ti/NK60FFFM
0

最新回复(0)