单选题 编写如下程序: Private Sub Command1_Click()   Dim str1 As String, str2 As String   str1=InputBox("输入一个字符串")   subf str1, str2   Print str2 End Sub Sub subf(s1 As String, s2 As String)   Dim temp As String   Static i As Integer   i=i+1   temp=Mid(s1, i, 1)   If temp<>"" Then subf s1, s2   s2=s2 & temp End Sub 程序运行后,单击命令按钮Command1,且输入"abcdef",则输出结果为(  )。
【正确答案】 C
【答案解析】解析:程序中过程subf的两个参数都默认按址传递,其内部定义的变量i为Static即静态变量,在过程调用时它会保留上次的值。这个过程的功能是通过递归调用自己依次取出参数1中即s1中的字符连接在s2的尾部,即使s1的字符串倒序后存入s2中。程序中输入了abcdef,则输出结果为fecdba。