整数的汉语读法。

给定一个32为有符号整数(int类型),输出符合汉语习惯的读法,如10086 读作“一万零八十六”。

 1 #include<iostream>
 2 #include<string>
 3 #include<math.h>
 4 using namespace std;
 5 int main()
 6 {
 7     string dw[]={"","","","","","","","","亿",""};
 8     string sz[]={"","","","","","","","","",""};    
 9     string bc[20];
10     int n,i=0,j;
11     bool flag =false;
12     cin>>n;      // 432   
13     if(n<0)
14         cout<<"";
15     n=abs(n);
16     while(n)
17     {
18         bc[i]=sz[n%10];
19         n/=10;
20         i++;
21     }
22     j=i-1;
23     for(--i;i>0;i--)
24     {
25         flag =false;
26         while(i>0&&(bc[i]==""&&bc[i-1]=="") )
27         {    
28             i--;                
29             if(dw[j]==""||dw[j]=="亿")
30              cout<<dw[j];
31             j--;
32             flag=true;
33         }
34         if(i!=0)
35           cout<<bc[i];
36         if(flag!=true&&bc[i]!="")
37           cout<<dw[j];
38         j--;
39     }
40     if(bc[0]!="")
41         cout<<bc[0];    
42     cout<<endl;
43     return 0;
44 }

 

转载于:https://www.cnblogs.com/fmonlyg/p/7307803.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值