开发工具:
文件大小: 19kb
下载次数: 0
上传时间: 2011-03-14
详细说明:
//--------------------------------------------------------------------------- #include #pragma hdrstop #include #include #include #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } / /--------------------------------------------------------------------------- AnsiString TForm1::num_str(Variant ls) { AnsiString dx_sz,dx_dw,str_int,str_dec,dx_str,fu; AnsiString a,b,b2,c,d; int num_int,num_dec,len_int,i,a_int,pp; //dx—str为返回字符串 dx_sz="零壹贰叁肆伍陆柒捌玖"; dx_dw="万仟佰拾亿仟佰拾万仟佰拾元"; //dx_dw="元拾佰仟万拾佰仟亿拾佰仟万"; //处理金额小于零情况 if (ls<0) {ls=-ls; fu="负"; } else fu=""; //取得整数值及整数串 dx_str=ls; //ShowMessage(dx_str); if ((ls>0)&&(ls<1)) {dx_str="0"+dx_str; pp=dx_str.AnsiPos("."); // ShowMessage(pp); if (pp>0) str_int=dx_str.SubString (1,dx_str.AnsiPos(".")-1);} else str_int=dx_str; num_int=StrToInt(str_int*100)/100; str_int=(str_int*100)/100; //取得小数值及小数串 if ((ls>0)&&(ls<1))num_dec=ls*100; else num_dec=(ls-num_int)*100; str_dec=IntToStr(num_dec); // ShowMessage(str_dec); len_int=str_int.Length(); dx_str=""; // ShowMessage(len_int); // ShowMessage((ls-num_int)*100); //转换整数部分 // for i:=1 to len—int do for (i=1;i<=len_int;i++) { //a为小写数字字符,b为对应的大写字符 //c为对应大写单位,d为当前大写字符串的最后一个汉字 a=str_int.SubString(i,1); a_int=StrToInt(a); b=dx_sz.SubString((a_int*2+1),2);// b=copy(dx_sz,(a_int2+1),2); c=dx_dw.SubString(((14-len_int+i-1)*2-1),2); if(dx_str!="")d=dx_str.SubString((dx_str.Length()-1),2); else d=""; if ((b=="零")&&((d=="零")||(b==b2)||(c=="元")||(c=="万")||(c=="亿"))) b=""; if ((a=="0")&&(c!="元")&&(c!="万")&&(c!="亿"))c=""; if (((c=="元")||(c=="万")||(c=="亿"))&&(d=="零")&&(a=="0")) {dx_str=dx_str.SubString(1,dx_str.Length()-2); d=dx_str.SubString(dx_str.Length()-1,2); if (((c=="元")&&(d=="万"))||((c=="万")&&(d=="亿")))c=""; } dx_str=dx_str+b+c; b2=b; // ShowMessage(a+";"+b+";"+c+";"+d); } //处理金额小于1的情况 if (dx_str.Length()<=2)dx_str=""; //转换小数部分 if ((num_dec<10)&&(ls>0)) { a_int=StrToInt(str_dec); //ShowMessage(a_int); b=dx_sz.SubString((a_int*2+1),2); if (num_dec==0) dx_str=dx_str+"整"; if(num_dec>0)dx_str=dx_str+"零"+b+"分"; } if(num_dec>=10) { a_int=StrToInt(str_dec.SubString(1,1)); a=dx_sz.SubString((a_int*2+1),2); a_int=StrToInt(str_dec.SubString(2,1)); b=dx_sz.SubString((a_int*2+1),2); if (a!="零")a=a+"角"; if (b!="零")b=b+"分"; else b=""; dx_str=dx_str+a+b; } if (ls==0) dx_str="零元整"; dx_str=fu+dx_str; //函数返回字符串 return dx_str; } void __fastcall TForm1::Button1Click(TObject *Sender) { Edit2->Text=num_str(Edit1->Text); ShowMessage(Edit2->Text); } //--------------------------------------------------------------------------- ...展开收缩
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.