怎么实现下面的功能?
例如 2,010,004.00,大写应该是贰千壹佰万零肆元零角零分
case '0' : retvalue := retvalue + '零'<font color="red">这样就变成凡是0都为零了</font>
代码如下:
Function (stringVar amount)
(
//stringVar value := CStr(amount);
stringVar value := amount;
numberVar alength := Length (value);
stringVar retvalue := '';
numberVar i := 0;
for i :=1 to alength step 1 do
(
select value[i] case '1' : retvalue := retvalue + '壹'
case '2' : retvalue := retvalue + '贰'
case '3' : retvalue := retvalue + '叁'
case '4' : retvalue := retvalue + '肆'
case '5' : retvalue := retvalue + '伍'
case '6' : retvalue := retvalue + '陆'
case '7' : retvalue := retvalue + '柒'
case '8' : retvalue := retvalue + '捌'
case '9' : retvalue := retvalue + '玖'
case '0' : retvalue := retvalue + '零'<font color="red">这样就变成凡是0都为零了</font>
case '.' : retvalue := retvalue + '元'
default: retvalue := retvalue ;
if (i = alength-23) and (value[i] <> '0') then retvalue := retvalue + '仟';
if (i = alength-21) and (value[i] <> '0') then retvalue := retvalue + '佰';
if (i = alength-20) and (value[i] <> '0') then retvalue := retvalue + '拾';
if (i = alength-19) and (value[i] <> '0') then retvalue := retvalue + '兆'; if (i = alength-17) and (value[i] <> '0') then retvalue := retvalue + '仟';
if (i = alength-16) and (value[i] <> '0') then retvalue := retvalue + '佰';
if (i = alength-15) and (value[i] <> '0') then retvalue := retvalue + '拾'; if (i = alength-13) then retvalue := retvalue + '亿';
if (i = alength-12) and (value[i] <> '0') then retvalue := retvalue + '仟';
if (i = alength-11) and (value[i] <> '0') then retvalue := retvalue + '佰';
if (i = alength-9) and (value[i] <> '0') then retvalue := retvalue + '拾'; if (i = alength-8) then retvalue := retvalue + '万';
if (i = alength-7) and (value[i] <> '0') then retvalue := retvalue + '仟';
if (i = alength-5) and (value[i] <> '0') then retvalue := retvalue + '佰';
if (i = alength-4) and (value[i] <> '0') then retvalue := retvalue + '拾';
if (i = alength-1) then if (value[i] = '0') then retvalue := retvalue + '零角' else retvalue := retvalue + '角';
if (i = alength) then if (value[i] = '0') then retvalue := retvalue + '零分' else retvalue := retvalue + '分';
);
retvalue;
)
例如 2,010,004.00,大写应该是贰千壹佰万零肆元零角零分
case '0' : retvalue := retvalue + '零'<font color="red">这样就变成凡是0都为零了</font>
代码如下:
Function (stringVar amount)
(
//stringVar value := CStr(amount);
stringVar value := amount;
numberVar alength := Length (value);
stringVar retvalue := '';
numberVar i := 0;
for i :=1 to alength step 1 do
(
select value[i] case '1' : retvalue := retvalue + '壹'
case '2' : retvalue := retvalue + '贰'
case '3' : retvalue := retvalue + '叁'
case '4' : retvalue := retvalue + '肆'
case '5' : retvalue := retvalue + '伍'
case '6' : retvalue := retvalue + '陆'
case '7' : retvalue := retvalue + '柒'
case '8' : retvalue := retvalue + '捌'
case '9' : retvalue := retvalue + '玖'
case '0' : retvalue := retvalue + '零'<font color="red">这样就变成凡是0都为零了</font>
case '.' : retvalue := retvalue + '元'
default: retvalue := retvalue ;
if (i = alength-23) and (value[i] <> '0') then retvalue := retvalue + '仟';
if (i = alength-21) and (value[i] <> '0') then retvalue := retvalue + '佰';
if (i = alength-20) and (value[i] <> '0') then retvalue := retvalue + '拾';
if (i = alength-19) and (value[i] <> '0') then retvalue := retvalue + '兆'; if (i = alength-17) and (value[i] <> '0') then retvalue := retvalue + '仟';
if (i = alength-16) and (value[i] <> '0') then retvalue := retvalue + '佰';
if (i = alength-15) and (value[i] <> '0') then retvalue := retvalue + '拾'; if (i = alength-13) then retvalue := retvalue + '亿';
if (i = alength-12) and (value[i] <> '0') then retvalue := retvalue + '仟';
if (i = alength-11) and (value[i] <> '0') then retvalue := retvalue + '佰';
if (i = alength-9) and (value[i] <> '0') then retvalue := retvalue + '拾'; if (i = alength-8) then retvalue := retvalue + '万';
if (i = alength-7) and (value[i] <> '0') then retvalue := retvalue + '仟';
if (i = alength-5) and (value[i] <> '0') then retvalue := retvalue + '佰';
if (i = alength-4) and (value[i] <> '0') then retvalue := retvalue + '拾';
if (i = alength-1) then if (value[i] = '0') then retvalue := retvalue + '零角' else retvalue := retvalue + '角';
if (i = alength) then if (value[i] = '0') then retvalue := retvalue + '零分' else retvalue := retvalue + '分';
);
retvalue;
)
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货