5-23 幣值轉換 (20分)
輸入乙個整數(位數不超過9位)代表乙個人民幣值(單位為元),請轉換成財務要求的大寫中文格式。如23108元,轉換後變成「貳萬叄仟壹百零捌」元。為了簡化輸出,用小寫英文本母a-j順序代表大寫數字0-9,用s、b、q、w、y分別代表拾、百、仟、萬、億。於是23108元應被轉換輸出為「cwdqbbai」元。
輸入在一行中給出乙個不超過9位的非負整數。
在一行中輸出轉換後的結果。注意「零」的用法必須符合中文習慣。
我的解題思路,有幾個特殊情況很複雜,只能分開討論,不知道有沒有更好的方法
#includeint main();
char b[10]=;
int c[10]=;
int flag[10]=;
long n;
int len=0;
scanf("%d",&n);
long t=n;
int j;
int hou=0;
while(t>0)
if(n==0) printf("a");
else
else if(flag[j]==1&&flag[j-1]==0)
}else printf("%c%c",a[c[j]],b[j]);
}else if(j>4)
else if(c[j]!=0) printf("%c%c",a[c[j]],b[j]);
else if(c[j]==0&&c[j-1]!=0) printf("a");
}else if(j==4)
else if(c[j]!=0) printf("%c%c",a[c[j]],b[j]);
else if(c[j]==0&&c[j-1]!=0) printf("wa");
}else if(j<4&&j>0)
else if(c[j]!=0) printf("%c%c",a[c[j]],b[j]);
else if(c[j]==0&&c[j-1]!=0) printf("a");
}else if(j==0)
} }return 0;
}
5 23 幣值轉換 20分
5 23 幣值轉換 20分 輸入乙個整數 位數不超過9位 代表乙個人民幣值 單位為元 請轉換成財務要求的大寫中文格式。如23108元,轉換後變成 貳萬叄仟壹百零捌 元。為了簡化輸出,用小寫英文本母a j順序代表大寫數字0 9,用s b q w y分別代表拾 百 仟 萬 億。於是23108元應被轉換輸...
5 23 幣值轉換
輸入乙個整數 位數不超過9位 代表乙個人民幣值 單位為元 請轉換成財務要求的大寫中文格式。如23108元,轉換後變成 貳萬叄仟壹百零捌 元。為了簡化輸出,用小寫英文本母a j順序代表大寫數字0 9,用s b q w y分別代表拾 百 仟 萬 億。於是23108元應被轉換輸出為 cwdqbbai 元。...
7 23 幣值轉換(20 分)
7 23 幣值轉換 20 分 輸入乙個整數 位數不超過9位 代表乙個人民幣值 單位為元 請轉換成財務要求的大寫中文格式。如23108元,轉換後變成 貳萬叄仟壹百零捌 元。為了簡化輸出,用小寫英文本母a j順序代表大寫數字0 9,用s b q w y分別代表拾 百 仟 萬 億。於是23108元應被轉換...