整数的汉语读法。

mac2022-06-30  28

给定一个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)