'commit'
This commit is contained in:
47
C++专题课程/基础知识/数的读法.cpp
Normal file
47
C++专题课程/基础知识/数的读法.cpp
Normal file
@@ -0,0 +1,47 @@
|
||||
#include<bits/stdc++.h>
|
||||
using namespace std;
|
||||
int main() {
|
||||
int len,i;
|
||||
char shu[10][50]= {"ling","yi","er","san","si","wu","liu","qi","ba","jiu"};
|
||||
char dw[10][50]= {" ","shi","bai","qian","wan","shi wan","bai wan","qian wan","yi","shi yi"};
|
||||
char a[20];
|
||||
int b[20];
|
||||
int j=0,k=0,wei=0;
|
||||
int ds[40];
|
||||
scanf("%s",&a);
|
||||
len=strlen(a);
|
||||
for(i=len-1; i>=0; i--) {
|
||||
b[j]=(int)a[i]-48;
|
||||
if(j>3)wei=wei%4;
|
||||
ds[k]=wei;
|
||||
k++;
|
||||
ds[k]=b[j];
|
||||
k++;
|
||||
wei++;
|
||||
j++;
|
||||
}
|
||||
int k1=0;
|
||||
for(i=1; i<k; i=i+2)
|
||||
if(ds[i]!=0) {
|
||||
k1=i-1;
|
||||
break;
|
||||
}
|
||||
|
||||
int p=0;
|
||||
for(i=k-1; i>=k1; i=i-2) {
|
||||
if(ds[i]==1&&ds[i-1]==1&&i==(k-1) ) {
|
||||
printf("shi ");
|
||||
continue;
|
||||
}
|
||||
if(ds[i]!=0||p==0) {
|
||||
printf("%s ",shu[ds[i]]);
|
||||
p++;
|
||||
if(ds[i]!=0) p=0;
|
||||
}
|
||||
if(ds[i-1]!=0&&ds[i]!=0) printf("%s ",dw[ds[i-1]]);
|
||||
if(i/2==8||(i/2>8&&(i-2)<k1)) printf("yi ");
|
||||
if(i/2==4||(i/2>4&&i/2<8&&(i-2)<k1)) printf("wan ");
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user