在vb编程中怎样将一个四位数拆开,并按相反顺序输出

Private Sub C1_Click()
Dim m, a%, b%, c%, d%, x
m = Val(Text1.Text)
Call Fun(m, a, b, c, d)
Print "m="; m; ","; d; c; b; a
Open App.Path & "\" & "progin.dat" For Input As #1
Open App.Path & "\" & "progout.dat" For Output As #2
For i = 1 To 5
Input #1, x
Call Fun(x, a, b, c, d)
Print #2, x; d; c; b; a
Next i
Close #1
Close #2
End Sub
Public Sub Fun(x, a%, b%, c%, d%)

'***********begin***********
a = lnt(x / 1000)
b = (lnt(x / 100)) Mod 10
c = (lnt(x / 10)) Mod 100
d = x Mod 10

'************end************

End Sub

Private Sub Form_Load()
Text1.Text = ""
End Sub
帮我修改一下这个程序,谢啦

将四位数用FORMAT转成字符,然后用StrReverse函数反向输出即可。
StrReverse函数 描述返回一个字符串,其中一个指定子字符串的字符顺序是反向的。

示例(将数字1234反向输出):

Print StrReverse(Format(1234, "0000")) '用FORMAT转成字符,然后用StrReverse函数反向输出

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-26
有必要计算吗?
输入的本身就是个字符串,直接按照字符串数组处理,逆序输出不就行了吗?追问

我是新手啊,请在begin和end之间编写适当程序,谢啦,那上面的是我写的,你在重写吧

追答

手头上只有VB2008,简单写了一下处理,请参考自己的需求进行修改:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim tempstr As String
For i = 1 To TextBox1.Text.Length Step 1
tempstr = TextBox1.Text(TextBox1.Text.Length - i)
TextBox2.Text = TextBox2.Text + tempstr
Next i
End Sub

这个处理可以把TextBox1里面输入的文字列逆序输出到TextBox2里面。

追问

你没明白我的意思啊,只需在begin和end之间添加适当程序即可,上面之间的内容是我写的,可是不对啊,请再重编,谢谢啊

第2个回答  推荐于2016-04-08
我是vb6的
其实vb里就有逆向输出函数

a=“1234”
print StrReverse(a)
这样就可以输出 4321
省去很多代码你可修改一下追问

这是考试题啊,只要求在begin和end之间编写适当程序

追答

Public Sub Fun(x, a%, b%, c%, d%)

'***********begin***********
a = Left(x, 1)
b = Mid(x, 2, 1)
c = Mid(x, 3, 1)
d = Right(x, 1)

'************end************

End Sub

本回答被提问者采纳
相似回答