欢迎来到天天文库
浏览记录
ID:38792888
大小:31.50 KB
页数:4页
时间:2019-06-19
《人民币金额的中文大写形式》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、题目描述: 读入一个浮点数值,将其转化为中文金额的大写形式。如123.45,转化为:壹佰贰拾叁元肆角伍分。编写程序,针对以下多种数据情况进一步完善程序。 1.当金额为整数时,只表示整数部分,并添加“整”字。如123表示为:壹佰贰拾叁元整。 2.当金额中含有连续的0时,只需写一个“零”即可。如10005表示为:壹万零伍元整。 3.10的表示形式。如110表示为:壹佰壹拾元整。而10则表示为:拾元整。代码为:importjava.util.Scanner;publicclassP63{//将数字大写publicstaticStringa(chari){switc
2、h(i){case'1':return"壹";case'2':return"贰";case'3':return"叁";case'4':return"肆";case'5':return"伍";case'6':return"陆";case'7':return"柒";case'8':return"捌";case'9':return"玖";}return"";}//处理万、亿publicstaticStringc(inti){Stringc="";intj;if(i%2!=0)c="万"+c;for(j=i/2;j>0;j--)c="亿"+c;returnc;}//返回单位
3、publicstaticStringb(inti){switch(i%4){case1:returnc(i/4);case2:return"拾";case3:return"佰";case0:return"仟";}return"";}publicstaticvoidmain(String[]args){Stringresult="";intj,i=0;Scannerin=newScanner(System.in);System.out.print("请输入你要转换大写的人民币金额:");//输入人民币金额并赋值给fStringf=in.nextLine();//用".
4、"切割f,并赋值给sString[]s=f.split("\.");while(i=0&&j>i-4;j--)if(s[0].charAt(j)!='0')result+=b(s[0].length()-i);i++;while(i
5、[0].charAt(i))+b(s[0].length()-i);break;}i++;}}else{result+=a(s[0].charAt(i))+b(s[0].length()-i);}i++;}if(result.trim().length()==2)result=result.replaceAll("壹拾","拾");result=result.replaceAll("零壹拾","零拾");System.out.print("转换后的大写为:");Doublen=Double.parseDouble(s[0]);doubled=Double.parse
6、Double(f);if(n==d)System.out.println(result.trim()+"元整");else{result+="元";if(s[1].charAt(0)!='0')result+=a(s[1].charAt(0))+"角";elseresult+="零";if(s[1].length()>=2)if(s[1].charAt(1)!='0')result+=a(s[1].charAt(1))+"分";System.out.println(result.trim());}}}
此文档下载收益归作者所有