1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
#include<cstring> char num[10][5] = {"ling", "yi", "er", "san", "si", "wu", "liu", "qi", "ba", "jiu"}; char unit[5][5] = {"Shi", "Bai", "Qian", "Wan", "Yi"}; int () { char a[20]; scanf("%s", &a); int len = strlen(a); int left = 0, right = len - 1; if(a[0] == '-') { printf("Fu"); left++; } while(left + 4 <= right) { right -= 4; } while(left < len) { bool flag = false; bool isPrint = false; while(left <= right) { if(left > 0 && a[left] == '0') { flag = true; } else { if(flag == true) { printf(" ling"); flag = false; } if(left > 0) printf(" "); printf("%s", num[a[left] - '0']); isPrint = true; if(left != right) { printf(" %s", unit[right - left - 1]); } } left++; } if(isPrint == true && right != len - 1) { printf(" %s", unit[(len - 1 - right)/4 + 2]); } right += 4; } return 0; }
|
近期评论