荔园在线
荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀
[回到开始]
[上一篇][下一篇]
发信人: Junhot (倚浩), 信区: Visual
标 题: 将阿拉伯数字转为中文大写的一段程序。
发信站: 荔园晨风BBS站 (Sun Sep 16 19:39:14 2001), 转信
这是我从Mud的程序中修改而来的,当然这段代码不完美,只是给大家提供灵感而已。
有些地方太长了,我换成了连接符。
Dim c_digit() As String = {"零","拾","佰","仟","万","亿","兆"}
Dim c_num() As String = {"零","壹","贰","叁","肆","伍","陆","柒" _
,"捌","玖","拾"}
Function Chinese_Number(i As Integer) As String
If (i < 0) Then Return "负" + chinese_number(-i)
If (i < 10) Then Return c_num(i)
If (i = 10) Then Return "壹" + c_digit(1)
If (i < 20) Then Return "壹" + c_digit(1) + c_num(i - 10)
If (i < 100) Then
If (i Mod 10 <> 0) Then
Return c_num(i / 10) + c_digit(1) + c_num(i Mod 10)
Else
Return c_num(i / 10) + c_digit(1)
End If
End If
If (i < 1000) Then
If (i Mod 100 = 0) Then
return c_num(i / 100) + c_digit(2)
ElseIf (i Mod 100 < 10) Then
return c_num(i / 100) + c_digit(2) + c_num(0) + _
chinese_number(i Mod 100)
Else
return c_num(i / 100) + c_digit(2) + _
chinese_number(i Mod 100)
End If
End If
If (i < 10000) Then
If (i Mod 1000 = 0) Then
return c_num(i / 1000) + c_digit(3)
ElseIf (i Mod 1000 < 100) Then
return c_num(i / 1000) + c_digit(3) + c_num(0) + _
chinese_number(i Mod 1000)
Else
return c_num(i / 1000) + c_digit(3) + _
chinese_number(i Mod 1000)
End If
End If
If (i < 100000000) Then
If (i Mod 10000 = 0) Then
return chinese_number(i / 10000) + c_digit(4)
ElseIf (i Mod 10000 < 1000) Then
return chinese_number(i / 10000) + c_digit(4) + _
c_num(0) + chinese_number(i Mod 10000)
Else
return chinese_number(i / 10000) + c_digit(4) + _
chinese_number(i Mod 10000)
End If
End If
If (i < 1000000000000) Then
If (i Mod 100000000 = 0) Then
return chinese_number(i / 100000000) + c_digit(5)
ElseIf (i Mod 100000000 < 1000000) Then
return chinese_number(i / 100000000) + c_digit(5) + _
c_num(0) + chinese_number(i Mod 100000000)
Else
return chinese_number(i / 100000000) + c_digit(5) + _
chinese_number(i Mod 100000000)
End If
End If
If (i Mod 1000000000000 = 0) Then
return chinese_number(i / 1000000000000) + c_digit(6)
ElseIf (i Mod 1000000000000 < 100000000) Then
return chinese_number(i / 1000000000000) + c_digit(6) + _
c_num(0) + chinese_number(i Mod 1000000000000)
Else
return chinese_number(i / 1000000000000) + c_digit(6) + _
chinese_number(i Mod 1000000000000)
End If
End Function
--
战意渐去,红尘琐事不关己,归隐故里。
Welcome to ULike:http://192.168.28.1
欢迎光临友来ULike--By LemonTea Studio
※ 修改:·Junhot 於 Sep 16 19:40:07 修改本文·[FROM: 192.168.28.222]
※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.28.222]
[回到开始]
[上一篇][下一篇]
荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店