永发信息网

delphi 阿拉伯数字转化成中文数字

答案:2  悬赏:40  手机版
解决时间 2021-03-23 07:55
  • 提问者网友:抽煙菂渘情少年
  • 2021-03-22 19:33
delphi 阿拉伯数字转化成中文数字
最佳答案
  • 五星知识达人网友:蓝房子
  • 2021-03-22 19:47
数要小于1亿,代码如下,供参考:
var
n:longint;
a:array[1..8] of integer;
b:array[1..8] of string;
i,k,m:integer;
s,st:string;

procedure insert(var m:integer;x:integer);
begin
    if m=0 then a[1]:=x else a[m+1]:=x;
    inc(m);
end;

begin
n:=83007305;
{readln(n);}
m:=0;
b[1]:=''; b[2]:='十'; b[3]:='百'; b[4]:='千'; b[5]:='万';
b[6]:='十'; b[7]:='百'; b[8]:='千'; 
while n>0 do begin
insert(m,n mod 10);
n:=n div 10;
end;
s:='';
for i:=m downto 1 do begin
str(a[i]:0,st);
k:=length(s);
if i<>5 then 
if a[i]=0 then begin 
if copy(s,k-1,2)<>'零' then s:=s+'零';
end else s:=s+st+b[i];
if i=5 then 
if a[i]=0 then begin 
if copy(s,k-1,2)<>'零' then s:=s+'万' 
else s:=copy(s,1,k-2)+'万';
end else s:=s+st+b[i];
end;
if copy(s,length(s)-1,2)='零' then s:=copy(s,1,length(s)-2);
writeln(s);
end.
全部回答
  • 1楼网友:往事埋风中
  • 2021-03-22 21:06
同问。。。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯