誰知道怎麼用VBS指令碼編寫用中文讀數學數字 要全程式碼和解釋。謝謝了_百...

  • 作者:由 匿名使用者 發表于 旅遊
  • 2022-08-22

y=n

sz=split(“0,1,2,3,4,5,6,7,8,9”,“,”)

hz=split(“零,一,二,三,四,五,六,七,八,九”,“,”)

for i=0 to 9

n=replace(n,sz(i),hz(i))

next

dw=“千百十億千百十萬千百十”

h=len(n)

for i=1 to h

s=s & mid(n,i,1) & mid(dw,12-h+i,1)

next

m=split(“零十,零,零百,零,零千,零,零零零,零,零零,零,零億,億,零萬,萬,億萬,億”,“,”) //求解釋

for i=0 to 14 step 2 //求解釋

s=replace(s,m(i),m(i+1)) //求解釋

next

if len(n)<>1 and right(s,1)=“零” then s=left(s,len(s)-1) //求解釋

if left(s,2)=“一十” then s=right(s,len(s)-1)

jx=msgbox (“您輸入的數是:” & y & vbcrlf & “讀為:” & s & vbcrlf & “是否繼續?”,vbyesno+32+4096,“系統提示”)

if jx=vbno then wscript。quit

s=“”

loop

誰知道怎麼用VBS指令碼編寫用中文讀數學數字 要全程式碼和解釋。謝謝了_百...windblast 2012-11-09

y=n

‘以下程式碼將數字轉換成中文

sz=Split(“0,1,2,3,4,5,6,7,8,9”,“,”)

hz=Split(“零,一,二,三,四,五,六,七,八,九”,“,”)

For i=0 To 9

n=Replace(n,sz(i),hz(i))

Next

’以下程式碼將中文數字按位置加上單位

dw=“千百十億千百十萬千百十”

h=Len(n)

For i=1 To h

s=s & Mid(n,i,1) & Mid(dw,12-h+i,1)

Next

‘以下程式碼處理數字中零,使其滿足通常的讀法,

’比如:一千零百八十,要變成:一千零八十,即 零百 要替換成 零

m=Split(“零十,零,零百,零,零千,零,零零零,零,零零,零,零億,億,零萬,萬,億萬,億”,“,”) ‘求解釋

For i=0 To 14 Step 2 ’求解釋

s=Replace(s,m(i),m(i+1)) ‘求解釋

Next

’以下程式碼處理數字結尾是零的情況:

‘比如:一千一百八十零,要變成:一千一百八十,去掉最後的零

If Len(n)<>1 And Right(s,1)=“零” Then s=Left(s,Len(s)-1) ’求解釋

If Left(s,2)=“一十” Then s=Right(s,Len(s)-1)

jx=MsgBox (“您輸入的數是:” & y & vbCrLf & “讀為:” & s & vbCrLf & “是否繼續?”,vbYesNo+32+4096,“系統提示”)

If jx=vbno Then WScript。quit

s=“”

Top