輸入乙個整數(位數不超過9位)代表乙個人民幣值(單位為元),請轉換成財務要求的大寫中文格式。如23108元,轉換後變成「貳萬叄仟壹百零捌」元。為了簡化輸出,用小寫英文本母a-j順序代表大寫數字0-9,用s、b、q、w、y分別代表拾、百、仟、萬、億。於是23108元應被轉換輸出為「cwdqbbai」元。
輸入格式:
輸入在一行中給出乙個不超過9位的非負整數。
輸出格式:
在一行中輸出轉換後的結果。注意「零」的用法必須符合中文習慣。
輸入樣例1:
813227345
輸出樣例1:
iybqdbcscwhqdbesf
輸入樣例2:
6900
輸出樣例2:
g**b
#include
intmain()
;//w1用來儲存數字的每一位
char w2[10]
=;//w2用來儲存0~9對應的a~j,結合w1,w2[w1[j]]即為數字轉換為大寫,例如 1轉化為b:w2[w1[1]]=b
char s[9]
=;//s用來儲存這個九位數每一位對應的單位
scanf
("%d"
,&m)
; n=m;
for(
int i=
0;i<
9;i++
)for
(;q>=
0;q--)}
if(c==0)
while
(w1[j]==0
)for
(;j>=
0;j--)if
(w1[j]==0
)if(j+u>=
3&&j+u<
8&&j<=3)
if(w1[j+1]
==0&&j>=
0&&w1[j]!=0
) j++
;//由於我們現在得到的w1[j]已經不是0了,而for迴圈會繼續進行乙個j--,導致我們跳過這個數,所以要j再加一}}
return0;
}
這道題的關鍵我認為在於對零的處理和中間「萬」的新增 7 23 幣值轉換(20 分)
7 23 幣值轉換 20 分 輸入乙個整數 位數不超過9位 代表乙個人民幣值 單位為元 請轉換成財務要求的大寫中文格式。如23108元,轉換後變成 貳萬叄仟壹百零捌 元。為了簡化輸出,用小寫英文本母a j順序代表大寫數字0 9,用s b q w y分別代表拾 百 仟 萬 億。於是23108元應被轉換...
7 23 幣值轉換 (20 分
輸入乙個整數 位數不超過9位 代表乙個人民幣值 單位為元 請轉換成財務要求的大寫中文格式。如23108元,轉換後變成 貳萬叄仟壹百零捌 元。為了簡化輸出,用小寫英文本母a j順序代表大寫數字0 9,用s b q w y分別代表拾 百 仟 萬 億。於是23108元應被轉換輸出為 cwdqbbai 元。...
7 23 幣值轉換 20 分
輸入乙個整數 位數不超過9位 代表乙個人民幣值 單位為元 請轉換成財務要求的大寫中文格式。如23108元,轉換後變成 貳萬叄仟壹百零捌 元。為了簡化輸出,用小寫英文本母a j順序代表大寫數字0 9,用s b q w y分別代表拾 百 仟 萬 億。於是23108元應被轉換輸出為 cwdqbbai 元。...