概述
先生,这个代码在Linux下用gcc编译通过了。 #include <stdio.h> #include <stdlib.h> #include <wchar.h> #include <locale.h> wchar_t cstrs[10]; wchar_t bit[10]; int main() { cstrs[0]=0x96F6;cstrs[1]=0x58F9;cstrs[2]=0x8D30; cstrs[3]=0x53C4;cstrs[4]=0x8086;cstrs[5]=0x4F0D; cstrs[6]=0x9678;cstrs[7]=0x67D2;cstrs[8]=0x634C; cstrs[9]=0x7396; bit[0]=0x5706;bit[1]=0x62FE;bit[2]=0x4F70; bit[3]=0x4EDF;bit[4]=0x842C;bit[5]=0x62FE; bit[6]=0x4F70;bit[7]=0x4EDF;bit[8]=0x5104; bit[9]=0x62FE;bit[10]=0x4F70;bit[11]=0x4EDF; bit[12]=0x842C; setlocale(LC_ALL, ""); double innum; int k=0; int tmp=1; scanf("%lf", &innum); while(tmp<innum){ k+=1; tmp*=10; } if(tmp>innum){k--; tmp=tmp/10;} if(k<0){k=0, tmp=1;} int e, ee, t=0; e=(int)innum; while(e>=1){ ee = (int)e/tmp; if(ee!=0){ if(t){ printf("%lc",cstrs[0]); t=0; } printf("%lc", cstrs[ee]); printf("%lc", bit[k]); } else { t=1; if(k==8 || k==4)printf("%lc",bit[k]); } k--; e=e%tmp; tmp=tmp/10; } long et; et=(long)(innum*10); printf("%lc%lc",cstrs[et%10], 0x89D2); et=(long)(innum*100); printf("%lc%lc",cstrs[et%10], 0x5206); puts(""); return 0; } 例如: 输入: 256000023.22 输出: 贰亿伍仟陆佰万零贰拾叄圆贰角贰分
最后
以上就是迷你书包为你收集整理的C语言编程:数字金额转换为中文大写金额的全部内容,希望文章能够帮你解决C语言编程:数字金额转换为中文大写金额所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复