C/C++ 获取汉字拼音
参考文章:http://blog.csdn.net/thenile/article/details/6318521
在参考文章的基础上,去掉了代码中C++特有的语法和数据类型,用纯C语言实现了获取汉字拼音的功能,使得代码在纯C项目中也能使用.
编码格式: gbk
测试字符串: const char* szChinese = "中华人民共和国 People's Republic of China";
测试结果: ZhongHuaRenMinGongHeGuo People's Republic of China
代码:
1 #include <string.h> 2 #include <stdint.h> 3 #include <stdio.h> 4 #include <ctype.h> 5 6 #define MAXBUFLEN 1024 7 8 enum PinyinMode{ 9 enmPinyinMode_AllUpper = 0, //全大写 10 enmPinyinMode_AllLower, //全小写 11 enmPinyinMode_FirstUpper, //首字母大写 12 }; 13 14 const char* getPinyinByCode(uint32_t code); 15 void getPinyin(const char* szChinese,char pinyinBuf[],const uint32_t maxBufLen,uint32_t *bufLen,const uint32_t mode); 16 17 int32_t main() 18 { 19 uint32_t bufLen = 0; 20 char pinyinBuf[MAXBUFLEN] = {0}; 21 const char* szChinese = "中华人民共和国 People's Republic of China"; 22 getPinyin(szChinese,pinyinBuf,MAXBUFLEN,&bufLen,enmPinyinMode_FirstUpper); 23 printf("%s %d\n",pinyinBuf,bufLen); 24 return 0; 25 } 26 27 void getPinyin(const char* szChinese,char pinyinBuf[],const uint32_t maxBufLen,uint32_t *bufLen,const uint32_t mode) 28 { 29 *bufLen = 0; 30 uint8_t ucHigh, ucLow; 31 uint32_t code,i,j; 32 const uint32_t chineseLen = strlen(szChinese); 33 for (i = 0; i<chineseLen;++i ) 34 { 35 uint8_t c = szChinese[i]; 36 // 排除askii 码 37 if (isascii(c)) 38 { 39 pinyinBuf[(*bufLen)++] = c; 40 continue; 41 } 42 ucHigh = (uint8_t)szChinese[i]; 43 ucLow = (uint8_t)szChinese[++i]; 44 if ( ucHigh <= 0xa0 || ucLow <= 0xa0 ) 45 { 46 continue; 47 } 48 else 49 { 50 code = (ucHigh - 0xa0) * 100 + ucLow - 0xa0; 51 } 52 const char* pBuf = getPinyinByCode(code); 53 for (j = 0; j < strlen(pBuf) && (*bufLen) < maxBufLen; ++j) 54 { 55 char cc = pBuf[j]; 56 switch(mode) 57 { 58 case enmPinyinMode_AllUpper:break; 59 case enmPinyinMode_AllLower:cc = tolower(cc);break; 60 case enmPinyinMode_FirstUpper:if(j!=0)cc = tolower(cc);break; 61 } 62 pinyinBuf[(*bufLen)++] = cc; 63 } 64 } 65 } 66 const char* getPinyinByCode(uint32_t code) 67 { 68 switch(code) 69 { 70 case 6325: 71 case 6436: 72 case 7571: 73 case 7925: 74 return "A"; 75 break; 76 case 6263: 77 case 6440: 78 case 7040: 79 case 7208: 80 case 7451: 81 case 7733: 82 case 7945: 83 case 8616: 84 return "AI"; 85 break; 86 case 5847: 87 case 5991: 88 case 6278: 89 case 6577: 90 case 6654: 91 case 7281: 92 case 7907: 93 case 8038: 94 case 8786: 95 return "AN"; 96 break; 97 return "ANG"; 98 break; 99 case 5974: 100 case 6254: 101 case 6427: 102 case 6514: 103 case 6658: 104 case 6959: 105 case 7033: 106 case 7081: 107 case 7365: 108 case 8190: 109 case 8292: 110 case 8643: 111 case 8701: 112 case 8773: 113 return "AO"; 114 break; 115 case 6056: 116 case 6135: 117 case 6517: 118 case 7857: 119 case 8446: 120 case 8649: 121 case 8741: 122 return "BA"; 123 break; 124 case 6267: 125 case 6334: 126 case 7494: 127 return "BAI"; 128 break; 129 case 5870: 130 case 5964: 131 case 7851: 132 case 8103: 133 case 8113: 134 case 8418: 135 return "BAN"; 136 break; 137 case 6182: 138 case 6826: 139 return "BANG"; 140 break; 141 case 6165: 142 case 7063: 143 case 7650: 144 case 8017: 145 case 8157: 146 case 8532: 147 case 8621: 148 return "BAO"; 149 break; 150 case 5635: 151 case 5873: 152 case 5893: 153 case 5993: 154 case 6141: 155 case 6703: 156 case 7753: 157 case 8039: 158 case 8156: 159 case 8645: 160 case 8725: 161 return "BEI"; 162 break; 163 case 5946: 164 case 5948: 165 case 7458: 166 case 7928: 167 return "BEN"; 168 break; 169 case 6452: 170 case 7420: 171 return "BENG"; 172 break; 173 case 5616: 174 case 5734: 175 case 6074: 176 case 6109: 177 case 6221: 178 case 6333: 179 case 6357: 180 case 6589: 181 case 6656: 182 case 6725: 183 case 6868: 184 case 6908: 185 case 6986: 186 case 6994: 187 case 7030: 188 case 7052: 189 case 7221: 190 case 7815: 191 case 7873: 192 case 7985: 193 case 8152: 194 case 8357: 195 case 8375: 196 case 8387: 197 case 8416: 198 case 8437: 199 case 8547: 200 case 8734: 201 return "BI"; 202 break; 203 case 5650: 204 case 5945: 205 case 6048: 206 case 6677: 207 case 6774: 208 case 7134: 209 case 7614: 210 case 7652: 211 case 7730: 212 case 7760: 213 case 8125: 214 case 8159: 215 case 8289: 216 case 8354: 217 case 8693: 218 return "BIAN"; 219 break; 220 case 7027: 221 case 7084: 222 case 7609: 223 case 7613: 224 case 7958: 225 case 7980: 226 case 8106: 227 case 8149: 228 case 8707: 229 case 8752: 230 return "BIAO"; 231 break; 232 case 8531: 233 return "BIE"; 234 break; 235 case 5747: 236 case 6557: 237 case 7145: 238 case 7167: 239 case 7336: 240 case 7375: 241 case 7587: 242 case 7957: 243 case 8738: 244 case 8762: 245 return "BIN"; 246 break; 247 case 5787: 248 case 5891: 249 case 6280: 250 return "BING"; 251 break; 252 case 5781: 253 case 6403: 254 case 6636: 255 case 7362: 256 case 7502: 257 case 7771: 258 case 7864: 259 case 8030: 260 case 8404: 261 case 8543: 262 case 8559: 263 return "BO"; 264 break; 265 case 6318: 266 case 6945: 267 case 7419: 268 case 7446: 269 case 7848: 270 case 7863: 271 case 8519: 272 return "BU"; 273 break; 274 case 6474: 275 case 7769: 276 return "CA"; 277 break; 278 return "CAI"; 279 break; 280 case 6978: 281 case 7078: 282 case 7218: 283 case 8451: 284 case 8785: 285 return "CAN"; 286 break; 287 case 5687: 288 return "CANG"; 289 break; 290 case 6448: 291 case 6878: 292 case 8309: 293 case 8429: 294 return "CAO"; 295 break; 296 case 6692: 297 return "CE"; 298 break; 299 case 6515: 300 case 6825: 301 return "CEN"; 302 break; 303 case 6465: 304 return "CENG"; 305 break; 306 case 6639: 307 case 6766: 308 case 7017: 309 case 7230: 310 case 7311: 311 case 7322: 312 case 7363: 313 case 7942: 314 case 7979: 315 case 8135: 316 return "CHA"; 317 break; 318 case 5713: 319 case 7846: 320 case 8091: 321 case 8218: 322 return "CHAI"; 323 break; 324 case 5770: 325 case 5838: 326 case 6159: 327 case 6667: 328 case 6893: 329 case 6904: 330 case 6981: 331 case 7031: 332 case 7086: 333 case 7472: 334 case 7688: 335 case 7966: 336 case 8324: 337 case 8580: 338 return "CHAN"; 339 break; 340 case 5686: 341 case 5943: 342 case 6041: 343 case 6137: 344 case 6660: 345 case 6568: 346 case 6749: 347 case 7029: 348 case 7047: 349 case 7438: 350 case 7509: 351 case 8680: 352 return "CHANG"; 353 break; 354 case 6687: 355 case 7443: 356 case 8173: 357 return "CHAO"; 358 break; 359 case 5969: 360 case 7726: 361 return "CHE"; 362 break; 363 case 5840: 364 case 5863: 365 case 6251: 366 case 6433: 367 case 6923: 368 case 7201: 369 case 7320: 370 case 7755: 371 case 8619: 372 return "CHEN"; 373 break; 374 case 5609: 375 case 5984: 376 case 7239: 377 case 7263: 378 case 7583: 379 case 7810: 380 case 7881: 381 case 7905: 382 case 8146: 383 case 8241: 384 case 8508: 385 return "CHENG"; 386 break; 387 case 5749: 388 case 6015: 389 case 6061: 390 case 6319: 391 case 6374: 392 case 6420: 393 case 6445: 394 case 6633: 395 case 7042: 396 case 7523: 397 case 7787: 398 case 8023: 399 case 8101: 400 case 8161: 401 case 8231: 402 case 8304: 403 case 8355: 404 case 8388: 405 case 8489: 406 case 8556: 407 case 8746: 408 return "CHI"; 409 break; 410 case 6091: 411 case 6671: 412 case 6731: 413 case 8409: 414 case 8430: 415 return "CHONG"; 416 break; 417 case 5717: 418 case 6492: 419 case 6716: 420 case 8112: 421 case 8637: 422 return "CHOU"; 423 break; 424 case 5601: 425 case 5927: 426 case 6680: 427 case 6732: 428 case 7109: 429 case 7238: 430 case 7290: 431 case 7343: 432 case 8150: 433 case 8260: 434 case 8573: 435 case 8777: 436 return "CHU"; 437 break; 438 case 6285: 439 case 6408: 440 case 7590: 441 case 8563: 442 return "CHUAI"; 443 break; 444 case 6622: 445 case 6955: 446 case 7516: 447 case 7843: 448 case 8413: 449 return "CHUAN"; 450 break; 451 case 6675: 452 return "CHUANG"; 453 break; 454 case 5879: 455 case 7302: 456 case 7319: 457 return "CHUI"; 458 break; 459 case 6127: 460 case 8040: 461 case 8277: 462 return "CHUN"; 463 break; 464 case 7401: 465 case 8554: 466 case 8626: 467 return "CHUO"; 468 break; 469 return "CI"; 470 break; 471 case 6075: 472 case 6358: 473 case 7684: 474 case 8043: 475 case 8457: 476 return "4337 伺"; 477 break; 478 case 6042: 479 case 6840: 480 case 7085: 481 case 7193: 482 case 7214: 483 case 7240: 484 return "CONG"; 485 break; 486 case 7308: 487 case 7403: 488 case 7577: 489 return "COU"; 490 break; 491 case 6180: 492 case 6562: 493 case 6607: 494 case 7367: 495 case 8501: 496 case 8530: 497 case 8577: 498 return "CU"; 499 break; 500 case 5764: 501 case 6305: 502 case 7664: 503 case 7973: 504 return "CUAN"; 505 break; 506 case 6718: 507 case 6145: 508 case 6393: 509 case 7213: 510 case 7333: 511 case 7505: 512 case 8631: 513 return "CUI"; 514 break; 515 case 6666: 516 case 8169: 517 return "CUN"; 518 break; 519 case 5640: 520 case 6547: 521 case 7566: 522 case 7917: 523 case 7983: 524 case 8078: 525 case 8526: 526 case 8567: 527 return "CUO"; 528 break; 529 case 6239: 530 case 6353: 531 case 6410: 532 case 6682: 533 case 7007: 534 case 8155: 535 case 8346: 536 case 8716: 537 case 8718: 538 return "DA"; 539 break; 540 case 6004: 541 case 6316: 542 case 6523: 543 case 6942: 544 case 7110: 545 case 7173: 546 case 8776: 547 return "DAI"; 548 break; 549 case 5757: 550 case 6144: 551 case 6402: 552 case 7373: 553 case 7470: 554 case 7781: 555 case 8067: 556 case 8087: 557 case 8185: 558 case 8376: 559 return "DAN"; 560 break; 561 case 5852: 562 case 5942: 563 case 6148: 564 case 6920: 565 case 7724: 566 case 7885: 567 case 8141: 568 return "DANG"; 569 break; 570 case 6322: 571 case 6665: 572 case 7514: 573 case 8478: 574 return "DAO"; 575 break; 576 case 7929: 577 return "DE"; 578 break; 579 case 6466: 580 case 6556: 581 case 7413: 582 case 7767: 583 case 7975: 584 case 8403: 585 return "DENG"; 586 break; 587 case 5621: 588 case 5765: 589 case 5814: 590 case 5848: 591 case 5901: 592 case 5970: 593 case 6122: 594 case 6454: 595 case 7023: 596 case 7116: 597 case 7260: 598 case 7306: 599 case 7475: 600 case 7738: 601 case 7758: 602 case 7791: 603 case 7965: 604 case 8438: 605 case 8730: 606 return "DI"; 607 break; 608 case 6439: 609 return "DIA"; 610 break; 611 case 5871: 612 case 5967: 613 case 6559: 614 case 7172: 615 case 7868: 616 case 8116: 617 case 8118: 618 case 8401: 619 case 8558: 620 return "DIAN"; 621 break; 622 case 7886: 623 case 8585: 624 case 8684: 625 return "DIAO"; 626 break; 627 case 5976: 628 case 6006: 629 case 6273: 630 case 6409: 631 case 7526: 632 case 8012: 633 case 8183: 634 case 8562: 635 case 8688: 636 return "DIE"; 637 break; 638 case 5674: 639 case 6404: 640 case 7164: 641 case 7575: 642 case 7754: 643 case 7814: 644 case 8059: 645 case 8184: 646 case 8490: 647 return "DING"; 648 break; 649 case 7891: 650 return "DIU"; 651 break; 652 case 5977: 653 case 6343: 654 case 6520: 655 case 6528: 656 case 7517: 657 case 7543: 658 case 7556: 659 case 7747: 660 case 8020: 661 return "DONG"; 662 break; 663 case 6190: 664 case 8128: 665 case 8229: 666 case 8391: 667 return "DOU"; 668 break; 669 case 6022: 670 case 6429: 671 case 6834: 672 case 7292: 673 case 7525: 674 case 8328: 675 case 8338: 676 case 8739: 677 case 8782: 678 return "DU"; 679 break; 680 case 7318: 681 case 7649: 682 case 8393: 683 return "DUAN"; 684 break; 685 case 7701: 686 case 7713: 687 case 7752: 688 return "DUI"; 689 break; 690 case 6771: 691 case 7632: 692 case 7727: 693 case 7766: 694 case 7779: 695 case 7970: 696 case 8527: 697 return "DUN"; 698 break; 699 case 6345: 700 case 6365: 701 case 6785: 702 case 7122: 703 case 7876: 704 case 8154: 705 case 8566: 706 return "DUO"; 707 break; 708 case 5612: 709 case 5832: 710 case 5844: 711 case 5949: 712 case 6035: 713 case 6113: 714 case 6164: 715 case 6332: 716 case 6721: 717 case 6977: 718 case 7025: 719 case 7378: 720 case 7581: 721 case 7916: 722 case 7941: 723 case 8042: 724 case 8206: 725 case 8689: 726 return "E"; 727 break; 728 case 6176: 729 case 6284: 730 return "EN"; 731 break; 732 case 5706: 733 case 6939: 734 case 7177: 735 case 7879: 736 case 8025: 737 case 8660: 738 return "ER"; 739 break; 740 case 5950: 741 case 7732: 742 return "FA"; 743 break; 744 case 6212: 745 case 6232: 746 case 6506: 747 case 7283: 748 case 7660: 749 case 7818: 750 case 8576: 751 return "FAN"; 752 break; 753 case 5890: 754 case 7242: 755 case 7853: 756 case 8419: 757 case 8648: 758 return "FANG"; 759 break; 760 case 6032: 761 case 6584: 762 case 6713: 763 case 6839: 764 case 6990: 765 case 7119: 766 case 7328: 767 case 7572: 768 case 7619: 769 case 7673: 770 case 7948: 771 case 8082: 772 case 8267: 773 case 8385: 774 case 8468: 775 case 8613: 776 case 8678: 777 return "FEI"; 778 break; 779 case 5739: 780 case 6915: 781 case 7291: 782 case 8687: 783 case 8787: 784 return "FEN"; 785 break; 786 case 5726: 787 case 5926: 788 case 6155: 789 case 6384: 790 case 6767: 791 case 7731: 792 return "FENG"; 793 break; 794 return "FO"; 795 break; 796 case 8330: 797 return "FOU"; 798 break; 799 case 5775: 800 case 5776: 801 case 5914: 802 case 6029: 803 case 6062: 804 case 6119: 805 case 6142: 806 case 6252: 807 case 6327: 808 case 6505: 809 case 6686: 810 case 6870: 811 case 6985: 812 case 7058: 813 case 7066: 814 case 7106: 815 case 7108: 816 case 7285: 817 case 7471: 818 case 7680: 819 case 7741: 820 case 7774: 821 case 7775: 822 case 7823: 823 case 7991: 824 case 8005: 825 case 8222: 826 case 8261: 827 case 8280: 828 case 8283: 829 case 8479: 830 case 8535: 831 case 8538: 832 case 8654: 833 case 8691: 834 return "FU"; 835 break; 836 case 6246: 837 case 7056: 838 case 7057: 839 case 7424: 840 case 7837: 841 return " GA"; 842 break; 843 case 5604: 844 case 5875: 845 case 5982: 846 case 7414: 847 case 7464: 848 return "GAI"; 849 break; 850 case 5965: 851 case 6053: 852 case 6247: 853 case 6306: 854 case 6779: 855 case 6838: 856 case 6887: 857 case 7104: 858 case 7347: 859 case 7426: 860 case 7723: 861 case 8065: 862 case 8491: 863 return "GAN"; 864 break; 865 case 7716: 866 case 7824: 867 case 8364: 868 return "GANG"; 869 break; 870 case 5626: 871 case 5830: 872 case 5912: 873 case 6227: 874 case 7141: 875 case 7332: 876 case 7334: 877 case 7429: 878 case 7915: 879 return "GAO"; 880 break; 881 case 5610: 882 case 5678: 883 case 5933: 884 case 5957: 885 case 6010: 886 case 6435: 887 case 7092: 888 case 7501: 889 case 7585: 890 case 7749: 891 case 7951: 892 case 8143: 893 case 8220: 894 case 8420: 895 case 8732: 896 return "GE"; 897 break; 898 return "GEI"; 899 break; 900 case 5608: 901 case 6102: 902 case 6371: 903 case 8462: 904 return "GEN"; 905 break; 906 case 6376: 907 case 6657: 908 case 7114: 909 case 8665: 910 return "GENG"; 911 break; 912 case 7178: 913 case 7537: 914 case 8228: 915 case 8601: 916 return "GONG"; 917 break; 918 case 5694: 919 case 5824: 920 case 6524: 921 case 6960: 922 case 7037: 923 case 7135: 924 case 7259: 925 case 7477: 926 case 7616: 927 case 8349: 928 case 8384: 929 case 8724: 930 return "GOU"; 931 break; 932 case 5637: 933 case 5812: 934 case 6152: 935 case 6536: 936 case 6773: 937 case 7284: 938 case 7379: 939 case 7484: 940 case 7486: 941 case 7591: 942 case 7617: 943 case 7813: 944 case 7825: 945 case 7860: 946 case 7932: 947 case 8019: 948 case 8083: 949 case 8233: 950 case 8494: 951 case 8593: 952 case 8681: 953 case 8729: 954 return "GU"; 955 break; 956 case 5652: 957 case 5820: 958 case 6341: 959 case 7273: 960 case 7550: 961 case 8027: 962 return "GUA"; 963 break; 964 return "GUAI"; 965 break; 966 case 5736: 967 case 6124: 968 case 6272: 969 case 6842: 970 case 7834: 971 case 8057: 972 case 8170: 973 case 8704: 974 return "GUAN"; 975 break; 976 case 6359: 977 case 6578: 978 case 7270: 979 case 7555: 980 return "GUANG"; 981 break; 982 case 5648: 983 case 5659: 984 case 6649: 985 case 7003: 986 case 7277: 987 case 7433: 988 case 7448: 989 case 8007: 990 case 8394: 991 case 8657: 992 case 8712: 993 return "GUI"; 994 break; 995 case 5782: 996 case 7121: 997 case 7762: 998 case 8671: 999 return "GUN"; 1000 break; 1001 case 5769: 1002 case 6266: 1003 case 6335: 1004 case 6494: 1005 case 6538: 1006 case 6603: 1007 case 7304: 1008 case 7529: 1009 case 8188: 1010 case 8268: 1011 case 8269: 1012 return "GUO"; 1013 break; 1014 case 7894: 1015 return "HA"; 1016 break; 1017 case 6443: 1018 case 7560: 1019 case 8516: 1020 return "HAI"; 1021 break; 1022 case 5885: 1023 case 6153: 1024 case 6294: 1025 case 6759: 1026 case 6911: 1027 case 7447: 1028 case 7642: 1029 case 8192: 1030 case 8205: 1031 case 8232: 1032 case 8793: 1033 return "HAN"; 1034 break; 1035 case 6776: 1036 case 7112: 1037 case 8194: 1038 return "HANG"; 1039 break; 1040 case 6179: 1041 case 6222: 1042 case 6438: 1043 case 6467: 1044 case 6909: 1045 case 6916: 1046 case 7427: 1047 case 8009: 1048 case 8211: 1049 case 8226: 1050 return "HAO"; 1051 break; 1052 case 5813: 1053 case 5932: 1054 case 5954: 1055 case 6432: 1056 case 6756: 1057 case 7434: 1058 case 7833: 1059 case 8202: 1060 case 8234: 1061 case 8471: 1062 return "HE"; 1063 break; 1064 return "HEI"; 1065 break; 1066 return "HEN"; 1067 break; 1068 case 6231: 1069 case 7181: 1070 case 7276: 1071 return "HENG"; 1072 break; 1073 case 5768: 1074 case 5774: 1075 case 5807: 1076 case 6106: 1077 case 6214: 1078 case 6216: 1079 case 6740: 1080 case 6792: 1081 return "HONG"; 1082 break; 1083 case 6009: 1084 case 6565: 1085 case 6943: 1086 case 8090: 1087 case 8383: 1088 case 8455: 1089 case 8655: 1090 case 8731: 1091 return "HOU"; 1092 break; 1093 case 5792: 1094 case 6392: 1095 case 6481: 1096 case 6518: 1097 case 6609: 1098 case 6679: 1099 case 6717: 1100 case 6816: 1101 case 6879: 1102 case 7190: 1103 case 7346: 1104 case 7385: 1105 case 7618: 1106 case 7635: 1107 case 7646: 1108 case 7670: 1109 case 7672: 1110 case 7679: 1111 case 8013: 1112 case 8032: 1113 case 8041: 1114 case 8055: 1115 case 8343: 1116 case 8513: 1117 case 8590: 1118 return "HU"; 1119 break; 1120 case 7072: 1121 case 7275: 1122 case 7725: 1123 case 7892: 1124 return "HUA"; 1125 break; 1126 case 8555: 1127 return "HUAI"; 1128 break; 1129 case 5928: 1130 case 6140: 1131 case 6307: 1132 case 6487: 1133 case 6621: 1134 case 6801: 1135 case 6829: 1136 case 6881: 1137 case 6930: 1138 case 6953: 1139 case 7157: 1140 case 7944: 1141 case 8673: 1142 case 8763: 1143 return "HUAN"; 1144 break; 1145 case 5882: 1146 case 6569: 1147 case 6850: 1148 case 6874: 1149 case 6956: 1150 case 7211: 1151 case 7533: 1152 case 8105: 1153 case 8308: 1154 case 8382: 1155 case 8692: 1156 return "HUANG"; 1157 break; 1158 case 5822: 1159 case 6078: 1160 case 6086: 1161 case 6205: 1162 case 6352: 1163 case 6360: 1164 case 6425: 1165 case 6736: 1166 case 6807: 1167 case 6811: 1168 case 6971: 1169 case 7132: 1170 case 7185: 1171 case 7445: 1172 case 7703: 1173 case 8219: 1174 case 8319: 1175 case 8766: 1176 return "HUI"; 1177 break; 1178 case 5827: 1179 case 6638: 1180 case 6752: 1181 case 6867: 1182 return "HUN"; 1183 break; 1184 case 5669: 1185 case 6229: 1186 case 6311: 1187 case 6475: 1188 case 6623: 1189 case 7856: 1190 case 7933: 1191 case 7976: 1192 case 8175: 1193 case 8322: 1194 return "HUO"; 1195 break; 1196 case 5629: 1197 case 5632: 1198 case 5662: 1199 case 5705: 1200 case 5742: 1201 case 5952: 1202 case 6024: 1203 case 6033: 1204 case 6193: 1205 case 6210: 1206 case 6265: 1207 case 6320: 1208 case 6350: 1209 case 6383: 1210 case 6507: 1211 case 6553: 1212 case 6809: 1213 case 6976: 1214 case 7087: 1215 case 7160: 1216 case 7165: 1217 case 7314: 1218 case 7374: 1219 case 7410: 1220 case 7411: 1221 case 7469: 1222 case 7473: 1223 case 7487: 1224 case 7620: 1225 case 7722: 1226 case 7831: 1227 case 7990: 1228 case 8002: 1229 case 8104: 1230 case 8217: 1231 case 8337: 1232 case 8339: 1233 case 8463: 1234 case 8550: 1235 case 8611: 1236 case 8661: 1237 case 8674: 1238 case 8757: 1239 case 8768: 1240 return "JI"; 1241 break; 1242 case 5704: 1243 case 5903: 1244 case 6171: 1245 case 6521: 1246 case 6804: 1247 case 6940: 1248 case 7176: 1249 case 7409: 1250 case 7546: 1251 case 7702: 1252 case 7882: 1253 case 7956: 1254 case 8072: 1255 case 8142: 1256 case 8244: 1257 case 8353: 1258 case 8434: 1259 case 8542: 1260 return "JIA"; 1261 break; 1262 case 5752: 1263 case 5841: 1264 case 5857: 1265 case 6149: 1266 case 6183: 1267 case 6286: 1268 case 6853: 1269 case 6931: 1270 case 6932: 1271 case 7144: 1272 case 7237: 1273 case 7305: 1274 case 7407: 1275 case 7415: 1276 case 7480: 1277 case 7489: 1278 case 7506: 1279 case 7576: 1280 case 7790: 1281 case 7921: 1282 case 8047: 1283 case 8148: 1284 case 8340: 1285 case 8469: 1286 case 8534: 1287 case 8561: 1288 case 8668: 1289 case 8721: 1290 return "JIAN"; 1291 break; 1292 case 6092: 1293 case 6814: 1294 case 7113: 1295 case 7154: 1296 case 7481: 1297 case 7768: 1298 case 8180: 1299 case 8461: 1300 case 8488: 1301 return "JIANG"; 1302 break; 1303 case 5714: 1304 case 5753: 1305 case 6020: 1306 case 6090: 1307 case 6256: 1308 case 6461: 1309 case 6572: 1310 case 7015: 1311 case 7524: 1312 case 8008: 1313 case 8052: 1314 case 8252: 1315 case 8520: 1316 case 8551: 1317 case 8662: 1318 return "JIAO"; 1319 break; 1320 case 5806: 1321 case 5821: 1322 case 6255: 1323 case 6414: 1324 case 7028: 1325 case 7061: 1326 case 7278: 1327 case 7757: 1328 case 8060: 1329 case 8201: 1330 case 8227: 1331 case 8441: 1332 case 8658: 1333 case 8726: 1334 return "JIE"; 1335 break; 1336 case 5865: 1337 case 6103: 1338 case 6132: 1339 case 6468: 1340 case 6643: 1341 case 6659: 1342 case 7138: 1343 case 7210: 1344 case 7340: 1345 case 7465: 1346 case 7478: 1347 case 8138: 1348 return "JIN"; 1349 break; 1350 case 5751: 1351 case 5869: 1352 case 6128: 1353 case 6616: 1354 case 6729: 1355 case 6794: 1356 case 6941: 1357 case 6982: 1358 case 7026: 1359 case 7534: 1360 case 7554: 1361 case 7570: 1362 case 7626: 1363 return "JIANG"; 1364 break; 1365 case 6936: 1366 case 7671: 1367 return "JIONG"; 1368 break; 1369 case 5754: 1370 case 6417: 1371 case 6746: 1372 case 7249: 1373 case 7274: 1374 case 8015: 1375 case 8053: 1376 case 8481: 1377 case 8761: 1378 return "JIU"; 1379 break; 1380 case 5738: 1381 case 5810: 1382 case 6036: 1383 case 6058: 1384 case 6076: 1385 case 6268: 1386 case 6965: 1387 case 6980: 1388 case 7202: 1389 case 7307: 1390 case 7316: 1391 case 7323: 1392 case 7357: 1393 case 7381: 1394 case 7488: 1395 case 7611: 1396 case 7850: 1397 case 7924: 1398 case 8022: 1399 case 8132: 1400 case 8153: 1401 case 8482: 1402 case 8522: 1403 case 8565: 1404 case 8620: 1405 case 8634: 1406 case 8722: 1407 return "JU"; 1408 break; 1409 case 5918: 1410 case 6590: 1411 case 6824: 1412 case 7280: 1413 case 7835: 1414 case 7935: 1415 case 7952: 1416 case 8633: 1417 return "JUAN"; 1418 break; 1419 case 5642: 1420 case 5667: 1421 case 5860: 1422 case 5939: 1423 case 6207: 1424 case 6421: 1425 case 6457: 1426 case 6469: 1427 case 6540: 1428 case 6617: 1429 case 7062: 1430 case 7169: 1431 case 7286: 1432 case 7351: 1433 case 7663: 1434 case 7967: 1435 case 8574: 1436 case 8591: 1437 return "JUE"; 1438 break; 1439 case 6260: 1440 case 8168: 1441 case 8362: 1442 case 8769: 1443 return "JUN"; 1444 break; 1445 case 5671: 1446 case 6339: 1447 case 7544: 1448 return "KA"; 1449 break; 1450 case 5660: 1451 case 5978: 1452 case 6160: 1453 case 6673: 1454 case 6693: 1455 case 7888: 1456 case 7920: 1457 case 7939: 1458 return "KAI"; 1459 break; 1460 case 5709: 1461 case 6108: 1462 case 7412: 1463 case 7772: 1464 case 7811: 1465 return "KAN"; 1466 break; 1467 case 5688: 1468 case 6742: 1469 case 7854: 1470 return "KANG"; 1471 break; 1472 case 6974: 1473 case 7264: 1474 case 7491: 1475 case 7877: 1476 return "KAO"; 1477 break; 1478 case 6430: 1479 case 6519: 1480 case 6701: 1481 case 6859: 1482 case 7076: 1483 case 7128: 1484 case 7170: 1485 case 7380: 1486 case 7520: 1487 case 7807: 1488 case 7861: 1489 case 7930: 1490 case 7993: 1491 case 8066: 1492 case 8129: 1493 case 8204: 1494 case 8282: 1495 case 8733: 1496 return "KE"; 1497 break; 1498 case 8144: 1499 return "KEN"; 1500 break; 1501 case 7912: 1502 return "KENG"; 1503 break; 1504 case 5737: 1505 case 6539: 1506 case 8377: 1507 return "KONG"; 1508 break; 1509 case 6050: 1510 case 6202: 1511 case 6321: 1512 case 7778: 1513 case 8356: 1514 return "KOU"; 1515 break; 1516 case 5658: 1517 case 6005: 1518 case 6423: 1519 case 7111: 1520 case 8728: 1521 return "KU"; 1522 break; 1523 case 5708: 1524 return "KUA"; 1525 break; 1526 case 5665: 1527 case 5906: 1528 case 6364: 1529 case 6586: 1530 case 7558: 1531 return "KUAI"; 1532 break; 1533 case 8737: 1534 return "KUAN"; 1535 break; 1536 case 5818: 1537 case 5831: 1538 case 5887: 1539 case 5959: 1540 case 6237: 1541 case 6349: 1542 case 7094: 1543 case 7460: 1544 return "KUANG"; 1545 break; 1546 case 5624: 1547 case 5649: 1548 case 5771: 1549 case 6162: 1550 case 6281: 1551 case 6413: 1552 case 6416: 1553 case 6720: 1554 case 6951: 1555 case 7450: 1556 case 7805: 1557 case 8606: 1558 case 8743: 1559 return "KUI"; 1560 break; 1561 case 6204: 1562 case 6245: 1563 case 6458: 1564 case 6618: 1565 case 6928: 1566 case 7152: 1567 case 7841: 1568 case 8051: 1569 return "LIAO"; 1570 break; 1571 case 5793: 1572 case 5988: 1573 case 6270: 1574 case 6354: 1575 case 6803: 1576 case 8483: 1577 case 8581: 1578 case 8764: 1579 return "LIE"; 1580 break; 1581 case 6194: 1582 case 6388: 1583 case 6555: 1584 case 6662: 1585 case 6733: 1586 case 6964: 1587 case 7361: 1588 case 7405: 1589 case 7602: 1590 case 7812: 1591 case 8452: 1592 case 8579: 1593 case 8775: 1594 return "LIN"; 1595 break; 1596 case 5925: 1597 case 6063: 1598 case 6342: 1599 case 6482: 1600 case 6786: 1601 case 7117: 1602 case 7258: 1603 case 7289: 1604 case 7418: 1605 case 8186: 1606 case 8240: 1607 case 8465: 1608 case 8676: 1609 return "LING"; 1610 break; 1611 case 6815: 1612 case 6962: 1613 case 7082: 1614 case 7124: 1615 case 7628: 1616 case 7654: 1617 case 7919: 1618 case 7954: 1619 case 8050: 1620 case 8644: 1621 return "LIU"; 1622 break; 1623 case 5966: 1624 case 6055: 1625 case 6781: 1626 case 7171: 1627 case 7248: 1628 case 7542: 1629 case 7735: 1630 case 8110: 1631 return "LONG"; 1632 break; 1633 case 5745: 1634 case 6168: 1635 case 6422: 1636 case 6548: 1637 case 7946: 1638 case 8092: 1639 case 8179: 1640 case 8287: 1641 case 8735: 1642 return "LOU"; 1643 break; 1644 case 6744: 1645 case 7321: 1646 case 7586: 1647 case 7918: 1648 case 7989: 1649 case 8158: 1650 return "Lü"; 1651 break; 1652 case 5968: 1653 case 6303: 1654 case 6464: 1655 case 6782: 1656 case 6843: 1657 case 6885: 1658 case 6954: 1659 case 7220: 1660 case 7251: 1661 case 7354: 1662 case 7391: 1663 case 7404: 1664 case 7510: 1665 case 7545: 1666 case 7969: 1667 case 8021: 1668 case 8056: 1669 case 8392: 1670 case 8421: 1671 case 8652: 1672 return "LU"; 1673 break; 1674 case 5785: 1675 case 7014: 1676 case 7279: 1677 case 8029: 1678 case 8639: 1679 return "LUAN"; 1680 break; 1681 return "LǖE"; 1682 break; 1683 return "LUN"; 1684 break; 1685 case 5732: 1686 case 5789: 1687 case 6093: 1688 case 6259: 1689 case 6291: 1690 case 6604: 1691 case 6788: 1692 case 6880: 1693 case 7183: 1694 case 7301: 1695 case 7565: 1696 case 7961: 1697 case 8107: 1698 case 8635: 1699 return "LUO"; 1700 break; 1701 case 6328: 1702 return "M"; 1703 break; 1704 case 6373: 1705 case 6579: 1706 case 7054: 1707 case 7231: 1708 case 8301: 1709 return "MA"; 1710 break; 1711 case 5929: 1712 case 6104: 1713 case 8618: 1714 return "MAI"; 1715 break; 1716 case 6012: 1717 case 6503: 1718 case 7147: 1719 case 7655: 1720 case 7960: 1721 case 8209: 1722 case 8293: 1723 case 8709: 1724 case 8720: 1725 return "MAN"; 1726 break; 1727 case 5888: 1728 case 6861: 1729 case 7743: 1730 case 8294: 1731 return "MANG"; 1732 break; 1733 case 5783: 1734 case 6066: 1735 case 6525: 1736 case 6787: 1737 case 7203: 1738 case 7436: 1739 case 7483: 1740 case 7503: 1741 case 7624: 1742 case 7714: 1743 case 7806: 1744 case 8317: 1745 case 8754: 1746 return "MAO"; 1747 break; 1748 case 6114: 1749 case 6550: 1750 case 6613: 1751 case 6828: 1752 case 6856: 1753 case 7325: 1754 case 7949: 1755 case 8044: 1756 case 8139: 1757 case 8740: 1758 return "MEI"; 1759 break; 1760 case 6249: 1761 case 7643: 1762 case 7715: 1763 case 7845: 1764 return "MEN"; 1765 break; 1766 case 5934: 1767 case 6189: 1768 case 6211: 1769 case 6734: 1770 case 7592: 1771 case 7770: 1772 case 8221: 1773 case 8276: 1774 case 8323: 1775 case 8427: 1776 case 8431: 1777 return "MENG"; 1778 break; 1779 case 5634: 1780 case 5855: 1781 case 6234: 1782 case 6368: 1783 case 6455: 1784 case 6608: 1785 case 6772: 1786 case 6921: 1787 case 6984: 1788 case 7563: 1789 case 7682: 1790 case 8445: 1791 case 8767: 1792 case 8771: 1793 return "MI"; 1794 break; 1795 case 6770: 1796 case 6837: 1797 case 6847: 1798 case 7579: 1799 case 7777: 1800 return "MIAN"; 1801 break; 1802 case 6387: 1803 case 6967: 1804 case 7131: 1805 case 7149: 1806 case 7234: 1807 case 7721: 1808 case 7780: 1809 case 8037: 1810 return "MIAO"; 1811 break; 1812 case 5631: 1813 case 6367: 1814 case 8326: 1815 case 8390: 1816 return "MIE"; 1817 break; 1818 case 6069: 1819 case 6526: 1820 case 6741: 1821 case 6793: 1822 case 7137: 1823 case 7168: 1824 case 7175: 1825 case 7710: 1826 case 8710: 1827 case 8628: 1828 return "MIN"; 1829 break; 1830 case 5804: 1831 case 6088: 1832 case 6873: 1833 case 7452: 1834 case 7808: 1835 case 8504: 1836 return "MING"; 1837 break; 1838 return "MIU"; 1839 break; 1840 case 5851: 1841 case 6052: 1842 case 6175: 1843 case 6641: 1844 case 7038: 1845 case 7366: 1846 case 7950: 1847 case 7987: 1848 case 8102: 1849 case 8182: 1850 case 8586: 1851 case 8588: 1852 case 8765: 1853 return "MO"; 1854 break; 1855 case 5716: 1856 case 6372: 1857 case 7788: 1858 case 8254: 1859 case 8290: 1860 case 8642: 1861 return "MOU"; 1862 break; 1863 case 5679: 1864 case 5973: 1865 case 6057: 1866 case 6769: 1867 case 7504: 1868 case 7866: 1869 return "MU"; 1870 break; 1871 case 6437: 1872 return "N"; 1873 break; 1874 case 6264: 1875 case 7539: 1876 case 7953: 1877 case 8136: 1878 return "NA"; 1879 break; 1880 case 5630: 1881 case 6021: 1882 case 6133: 1883 case 7245: 1884 return "NAI"; 1885 break; 1886 case 6411: 1887 case 6478: 1888 case 6479: 1889 case 7310: 1890 case 7578: 1891 case 8279: 1892 case 8486: 1893 return "NAN"; 1894 break; 1895 case 6313: 1896 case 6476: 1897 case 6646: 1898 case 7457: 1899 return "NANG"; 1900 break; 1901 case 5611: 1902 case 5981: 1903 case 6346: 1904 case 6614: 1905 case 7207: 1906 case 7748: 1907 case 7883: 1908 case 8245: 1909 return "NAO"; 1910 break; 1911 case 5811: 1912 return "NE"; 1913 break; 1914 return "NEI"; 1915 break; 1916 case 7705: 1917 return "NEN"; 1918 break; 1919 return "NENG"; 1920 break; 1921 case 5703: 1922 case 5972: 1923 case 6605: 1924 case 6685: 1925 case 7439: 1926 case 7627: 1927 case 7711: 1928 case 7794: 1929 case 7874: 1930 case 8682: 1931 return "NI"; 1932 break; 1933 case 5605: 1934 case 5994: 1935 case 7393: 1936 case 8004: 1937 case 8651: 1938 case 8683: 1939 return "NIAN"; 1940 break; 1941 return "NIANG"; 1942 break; 1943 case 6064: 1944 case 7053: 1945 case 7569: 1946 case 8433: 1947 return "NIAO"; 1948 break; 1949 case 5877: 1950 case 6233: 1951 case 6431: 1952 case 8208: 1953 case 8411: 1954 case 8570: 1955 return "NIE"; 1956 break; 1957 return "NIN"; 1958 break; 1959 case 5690: 1960 case 6344: 1961 case 6924: 1962 case 8187: 1963 return "NING"; 1964 break; 1965 case 6580: 1966 case 6678: 1967 case 7004: 1968 return "NIU"; 1969 break; 1970 case 5715: 1971 case 6370: 1972 return "NONG"; 1973 break; 1974 case 8181: 1975 return "NOU"; 1976 break; 1977 case 6983: 1978 case 7032: 1979 case 7059: 1980 case 7069: 1981 return "NU"; 1982 break; 1983 case 7704: 1984 case 7847: 1985 case 8412: 1986 return "Nǖ"; 1987 break; 1988 return "NUAN"; 1989 break; 1990 return "NUE"; 1991 break; 1992 case 5748: 1993 case 6289: 1994 case 6386: 1995 case 7927: 1996 return "NUO"; 1997 break; 1998 case 6424: 1999 case 6462: 2000 return "O"; 2001 break; 2002 case 5809: 2003 case 6670: 2004 case 7417: 2005 case 8178: 2006 return "OU"; 2007 break; 2008 case 6166: 2009 case 7243: 2010 case 8365: 2011 return "PA"; 2012 break; 2013 case 5729: 2014 case 6169: 2015 case 6363: 2016 return "PAI"; 2017 break; 2018 case 6761: 2019 case 6790: 2020 case 8140: 2021 case 8165: 2022 case 8320: 2023 case 8571: 2024 return "PAN"; 2025 break; 2026 case 6561: 2027 case 6872: 2028 case 6944: 2029 case 8306: 2030 return "PANG"; 2031 break; 2032 case 6243: 2033 case 6583: 2034 case 6650: 2035 case 7567: 2036 case 8069: 2037 return "PAO"; 2038 break; 2039 case 6446: 2040 case 6490: 2041 case 7623: 2042 case 7934: 2043 case 8512: 2044 case 8612: 2045 return "PEI"; 2046 break; 2047 case 6852: 2048 return "PEN"; 2049 break; 2050 case 6001: 2051 case 6456: 2052 case 6681: 2053 case 8318: 2054 return "PENG"; 2055 break; 2056 case 5607: 2057 case 5682: 2058 case 5880: 2059 case 5892: 2060 case 5915: 2061 case 5960: 2062 case 6017: 2063 case 6037: 2064 case 6308: 2065 case 6472: 2066 case 6647: 2067 case 6836: 2068 case 7039: 2069 case 7102: 2070 case 7233: 2071 case 7422: 2072 case 7802: 2073 case 7828: 2074 case 7875: 2075 case 8117: 2076 case 8166: 2077 case 8223: 2078 case 8271: 2079 case 8589: 2080 return "PI"; 2081 break; 2082 case 5850: 2083 case 7073: 2084 case 7490: 2085 case 7561: 2086 case 8470: 2087 case 8568: 2088 return "PIAN"; 2089 break; 2090 case 5666: 2091 case 6449: 2092 case 7046: 2093 case 7146: 2094 case 7372: 2095 case 7809: 2096 case 8310: 2097 return "PIAO"; 2098 break; 2099 case 6054: 2100 case 7513: 2101 return "PIE"; 2102 break; 2103 case 7041: 2104 case 6253: 2105 case 7016: 2106 case 7315: 2107 case 7482: 2108 case 8213: 2109 return "PIN"; 2110 break; 2111 case 5723: 2112 case 7019: 2113 case 7250: 2114 case 8650: 2115 return "PING"; 2116 break; 2117 case 5647: 2118 case 5922: 2119 case 7174: 2120 case 7839: 2121 case 7862: 2122 case 8011: 2123 case 8345: 2124 return "PO"; 2125 break; 2126 case 5786: 2127 case 6269: 2128 return "POU"; 2129 break; 2130 case 5773: 2131 case 6459: 2132 case 6863: 2133 case 6907: 2134 case 7217: 2135 case 7511: 2136 case 7968: 2137 case 7972: 2138 case 8575: 2139 return "PU"; 2140 break; 2141 case 5633: 2142 case 5725: 2143 case 5963: 2144 case 6027: 2145 case 6046: 2146 case 6089: 2147 case 6129: 2148 case 6134: 2149 case 6161: 2150 case 6213: 2151 case 6366: 2152 case 6450: 2153 case 6508: 2154 case 6510: 2155 case 6764: 2156 case 6831: 2157 case 7075: 2158 case 7118: 2159 case 7187: 2160 case 7189: 2161 case 7229: 2162 case 7271: 2163 case 7342: 2164 case 7440: 2165 case 7605: 2166 case 7687: 2167 case 7712: 2168 case 7751: 2169 case 8193: 2170 case 8251: 2171 case 8264: 2172 case 8475: 2173 case 8476: 2174 case 8572: 2175 case 8702: 2176 case 8772: 2177 return "QI"; 2178 break; 2179 case 6154: 2180 case 8736: 2181 return "QIA"; 2182 break; 2183 case 5727: 2184 case 5761: 2185 case 5868: 2186 case 6023: 2187 case 6045: 2188 case 6071: 2189 case 6271: 2190 case 6509: 2191 case 6705: 2192 case 6727: 2193 case 6925: 2194 case 6926: 2195 case 6929: 2196 case 7155: 2197 case 7293: 2198 case 7541: 2199 case 7709: 2200 case 7852: 2201 case 8215: 2202 case 8373: 2203 return "QIAN"; 2204 break; 2205 case 6762: 2206 case 7045: 2207 case 7341: 2208 case 7408: 2209 case 7633: 2210 case 7926: 2211 case 7947: 2212 case 7974: 2213 case 8163: 2214 case 8262: 2215 case 8439: 2216 case 8536: 2217 return "QIANG"; 2218 break; 2219 case 5668: 2220 case 5829: 2221 case 5859: 2222 case 6081: 2223 case 6529: 2224 case 6724: 2225 case 6730: 2226 case 7352: 2227 case 7745: 2228 case 8546: 2229 case 8719: 2230 return "QIAO"; 2231 break; 2232 case 5907: 2233 case 6711: 2234 case 7010: 2235 case 7492: 2236 case 7938: 2237 case 8370: 2238 return "QIE"; 2239 break; 2240 case 6043: 2241 case 6276: 2242 case 6336: 2243 case 6426: 2244 case 6463: 2245 case 6858: 2246 case 7353: 2247 case 7923: 2248 case 8291: 2249 case 8432: 2250 return "QIN"; 2251 break; 2252 case 6060: 2253 case 6485: 2254 case 7349: 2255 case 7764: 2256 case 8263: 2257 case 8332: 2258 case 8368: 2259 case 8605: 2260 case 8675: 2261 case 8784: 2262 return "QING"; 2263 break; 2264 case 5886: 2265 case 6068: 2266 case 8123: 2267 case 8243: 2268 case 8344: 2269 case 8528: 2270 case 8638: 2271 return "QIONG"; 2272 break; 2273 case 5720: 2274 case 5947: 2275 case 6576: 2276 case 6848: 2277 case 6947: 2278 case 6957: 2279 case 7317: 2280 case 7468: 2281 case 8216: 2282 case 8239: 2283 case 8288: 2284 case 8435: 2285 case 8460: 2286 case 8690: 2287 case 8792: 2288 return "QIU"; 2289 break; 2290 case 5816: 2291 case 5930: 2292 case 6201: 2293 case 6230: 2294 case 6511: 2295 case 6573: 2296 case 6754: 2297 case 7219: 2298 case 7479: 2299 case 7512: 2300 case 7552: 2301 case 7678: 2302 case 7765: 2303 case 8119: 2304 case 8248: 2305 case 8329: 2306 case 8480: 2307 case 8636: 2308 case 8781: 2309 return "QU"; 2310 break; 2311 case 5825: 2312 case 6085: 2313 case 6710: 2314 case 7125: 2315 case 7390: 2316 case 7816: 2317 case 7893: 2318 case 8273: 2319 case 8360: 2320 case 8760: 2321 return "QUAN"; 2322 break; 2323 case 6755: 2324 case 6758: 2325 case 7708: 2326 return "QUE"; 2327 break; 2328 case 6950: 2329 return "QUN"; 2330 break; 2331 case 6059: 2332 case 8237: 2333 case 8755: 2334 return "RAN"; 2335 break; 2336 case 7692: 2337 case 8006: 2338 return "RANG"; 2339 break; 2340 case 6073: 2341 case 7012: 2342 case 7267: 2343 return "RAO"; 2344 break; 2345 return "RE"; 2346 break; 2347 case 5680: 2348 case 6083: 2349 case 6156: 2350 case 6631: 2351 case 7377: 2352 case 7994: 2353 case 8137: 2354 return "REN"; 2355 break; 2356 return "RENG"; 2357 break; 2358 return "RI"; 2359 break; 2360 case 6541: 2361 case 6585: 2362 case 7337: 2363 case 7532: 2364 case 8278: 2365 return "RONG"; 2366 break; 2367 case 8459: 2368 case 8569: 2369 case 8723: 2370 return "ROU"; 2371 break; 2372 case 6174: 2373 case 6224: 2374 case 6473: 2375 case 6818: 2376 case 6865: 2377 case 6906: 2378 case 7140: 2379 case 7908: 2380 case 8164: 2381 case 8212: 2382 return "RU"; 2383 break; 2384 case 7535: 2385 return "RUAN"; 2386 break; 2387 case 6039: 2388 case 6208: 2389 case 7236: 2390 case 7803: 2391 case 8224: 2392 return "RUI"; 2393 break; 2394 return "RUN"; 2395 break; 2396 case 5728: 2397 case 8372: 2398 return "RUO"; 2399 break; 2400 case 5606: 2401 case 5677: 2402 case 7493: 2403 case 7559: 2404 case 7610: 2405 return "SA"; 2406 break; 2407 case 6471: 2408 return "SAI"; 2409 break; 2410 case 6644: 2411 case 7507: 2412 case 8454: 2413 return "SAN"; 2414 break; 2415 case 6290: 2416 case 7763: 2417 case 8210: 2418 return "SANG"; 2419 break; 2420 case 6003: 2421 case 7150: 2422 case 7156: 2423 case 7593: 2424 case 8094: 2425 case 8694: 2426 return "SAO"; 2427 break; 2428 return "SE"; 2429 break; 2430 return "SEN"; 2431 break; 2432 return "SENG"; 2433 break; 2434 case 6394: 2435 case 7606: 2436 case 7901: 2437 case 8080: 2438 case 8436: 2439 case 8614: 2440 case 8672: 2441 return "SHA"; 2442 break; 2443 case 8507: 2444 return "SHAI"; 2445 break; 2446 case 5663: 2447 case 5808: 2448 case 5923: 2449 case 5979: 2450 case 6047: 2451 case 6890: 2452 case 7009: 2453 case 7051: 2454 case 7083: 2455 case 7594: 2456 case 7844: 2457 case 8062: 2458 case 8321: 2459 case 8414: 2460 case 8539: 2461 case 8713: 2462 return "SHAN"; 2463 break; 2464 case 5980: 2465 case 7120: 2466 case 7368: 2467 case 7656: 2468 case 8592: 2469 return "SHANG"; 2470 break; 2471 case 5931: 2472 case 6070: 2473 case 6891: 2474 case 7228: 2475 case 8366: 2476 case 8425: 2477 return "SHAO"; 2478 break; 2479 case 5639: 2480 case 5760: 2481 case 6606: 2482 case 6860: 2483 case 7608: 2484 case 7820: 2485 case 8774: 2486 return "SHE"; 2487 break; 2488 case 5837: 2489 case 6123: 2490 case 6351: 2491 case 6841: 2492 case 7309: 2493 case 7547: 2494 case 7982: 2495 case 8255: 2496 return "SHEN"; 2497 break; 2498 case 6551: 2499 case 7441: 2500 case 7782: 2501 case 8347: 2502 return "SHENG"; 2503 break; 2504 case 5854: 2505 case 5985: 2506 case 6110: 2507 case 6173: 2508 case 6317: 2509 case 7388: 2510 case 7459: 2511 case 7634: 2512 case 7870: 2513 case 8307: 2514 case 8334: 2515 case 8363: 2516 case 8525: 2517 case 8669: 2518 case 8685: 2519 return "SHI"; 2520 break; 2521 case 6587: 2522 case 7123: 2523 case 8428: 2524 return "SHOU"; 2525 break; 2526 case 5731: 2527 case 5951: 2528 case 6136: 2529 case 6283: 2530 case 6780: 2531 case 6888: 2532 case 7013: 2533 case 7508: 2534 case 7582: 2535 case 7988: 2536 return "SHU"; 2537 break; 2538 case 6407: 2539 return "SHUA"; 2540 break; 2541 case 8316: 2542 return "SHUAI"; 2543 break; 2544 case 6737: 2545 case 6844: 2546 return "SHUAN"; 2547 break; 2548 case 7055: 2549 return "SHUANG"; 2550 break; 2551 return "SHUI"; 2552 break; 2553 return "SHUN"; 2554 break; 2555 case 6184: 2556 case 6287: 2557 case 6989: 2558 case 7335: 2559 case 7869: 2560 return "SHUO"; 2561 break; 2562 case 5643: 2563 case 5778: 2564 case 5944: 2565 case 6348: 2566 case 6765: 2567 case 6784: 2568 case 6889: 2569 case 7006: 2570 case 7065: 2571 case 7133: 2572 case 7675: 2573 case 7940: 2574 case 8024: 2575 case 8174: 2576 case 8247: 2577 case 8351: 2578 return "SI"; 2579 break; 2580 case 5801: 2581 case 6131: 2582 case 6534: 2583 case 6552: 2584 case 6676: 2585 case 6704: 2586 case 6833: 2587 case 8121: 2588 return "SONG"; 2589 break; 2590 case 5937: 2591 case 6220: 2592 case 6418: 2593 case 6453: 2594 case 6640: 2595 case 6849: 2596 case 7612: 2597 case 7804: 2598 case 7943: 2599 case 8284: 2600 return "SOU"; 2601 break; 2602 case 5777: 2603 case 5853: 2604 case 6188: 2605 case 6428: 2606 case 6726: 2607 case 6819: 2608 case 8389: 2609 case 8602: 2610 case 8653: 2611 return "SU"; 2612 break; 2613 case 6601: 2614 return "SUAN"; 2615 break; 2616 case 5839: 2617 case 6120: 2618 case 6901: 2619 case 6968: 2620 case 7661: 2621 case 7785: 2622 case 7801: 2623 return "SUI"; 2624 break; 2625 case 6105: 2626 case 6588: 2627 case 6624: 2628 case 7330: 2629 case 8632: 2630 return "SUN"; 2631 break; 2632 case 6379: 2633 case 6434: 2634 case 6442: 2635 case 7022: 2636 case 7288: 2637 case 7792: 2638 case 8440: 2639 return "SUO"; 2640 break; 2641 case 6743: 2642 case 6866: 2643 case 6961: 2644 case 7329: 2645 case 7719: 2646 case 7872: 2647 case 8533: 2648 case 8703: 2649 return "TA"; 2650 break; 2651 case 5902: 2652 case 6223: 2653 case 6330: 2654 case 7070: 2655 case 7536: 2656 case 7638: 2657 case 7849: 2658 case 8544: 2659 case 8656: 2660 return "TAI"; 2661 break; 2662 case 5916: 2663 case 6903: 2664 case 7428: 2665 case 7694: 2666 case 7867: 2667 case 7936: 2668 case 8191: 2669 return "TAN"; 2670 break; 2671 case 5746: 2672 case 6491: 2673 case 6871: 2674 case 7209: 2675 case 7344: 2676 case 7906: 2677 case 7959: 2678 case 8177: 2679 case 8305: 2680 case 8311: 2681 case 8442: 2682 case 8517: 2683 return "TANG"; 2684 break; 2685 case 5627: 2686 case 6391: 2687 case 6812: 2688 case 7226: 2689 case 7666: 2690 return "TAO"; 2691 break; 2692 return "1845 餐"; 2693 break; 2694 case 6315: 2695 case 7693: 2696 case 7911: 2697 return "TE"; 2698 break; 2699 case 7588: 2700 return "TENG"; 2701 break; 2702 case 5735: 2703 case 6709: 2704 case 6949: 2705 case 7130: 2706 case 8035: 2707 case 8151: 2708 case 8514: 2709 return "TI"; 2710 break; 2711 case 6261: 2712 case 6735: 2713 case 6757: 2714 case 7369: 2715 case 7817: 2716 return "TIAN"; 2717 break; 2718 case 5712: 2719 case 7686: 2720 case 8127: 2721 case 8272: 2722 case 8352: 2723 case 8448: 2724 case 8622: 2725 case 8670: 2726 case 8756: 2727 return "TIAO"; 2728 break; 2729 case 6138: 2730 case 8749: 2731 return "TIE"; 2732 break; 2733 case 6080: 2734 case 6167: 2735 case 7035: 2736 case 7272: 2737 case 7890: 2738 case 8249: 2739 case 8610: 2740 return "TING"; 2741 break; 2742 case 5701: 2743 case 5758: 2744 case 6077: 2745 case 6444: 2746 case 6690: 2747 case 6892: 2748 case 7737: 2749 return "TONG"; 2750 break; 2751 case 7855: 2752 case 7822: 2753 case 8727: 2754 return "TOU"; 2755 break; 2756 case 6002: 2757 case 6117: 2758 case 6143: 2759 case 7842: 2760 case 8509: 2761 return "TU"; 2762 break; 2763 case 6250: 2764 case 6972: 2765 return "TUAN"; 2766 break; 2767 case 7653: 2768 return "TUI"; 2769 break; 2770 case 5759: 2771 case 6629: 2772 case 7453: 2773 case 7564: 2774 return "TUN"; 2775 break; 2776 case 5617: 2777 case 5702: 2778 case 5971: 2779 case 6653: 2780 case 6791: 2781 case 7256: 2782 case 7262: 2783 case 7350: 2784 case 7740: 2785 case 8374: 2786 case 8502: 2787 case 8541: 2788 case 8630: 2789 return "TUO"; 2790 break; 2791 case 5684: 2792 case 7020: 2793 case 7580: 2794 return "WA"; 2795 break; 2796 return "WAI"; 2797 break; 2798 case 5664: 2799 case 6025: 2800 case 6150: 2801 case 7093: 2802 case 7126: 2803 case 7194: 2804 case 7568: 2805 case 7821: 2806 case 8274: 2807 return "WAN"; 2808 break; 2809 case 5672: 2810 case 6244: 2811 case 6715: 2812 case 7394: 2813 case 8745: 2814 return "WANG"; 2815 break; 2816 case 5743: 2817 case 5835: 2818 case 5881: 2819 case 5883: 2820 case 6158: 2821 case 6217: 2822 case 6488: 2823 case 6501: 2824 case 6543: 2825 case 6545: 2826 case 6611: 2827 case 6612: 2828 case 6739: 2829 case 6777: 2830 case 6802: 2831 case 6822: 2832 case 6952: 2833 case 7024: 2834 case 7166: 2835 case 7224: 2836 case 7406: 2837 case 7631: 2838 case 7648: 2839 case 8084: 2840 case 8426: 2841 case 8659: 2842 return "WEI"; 2843 break; 2844 case 5656: 2845 case 6751: 2846 case 6775: 2847 case 7223: 2848 case 8609: 2849 return "WEN"; 2850 break; 2851 case 6178: 2852 case 6219: 2853 return "WENG"; 2854 break; 2855 case 5733: 2856 case 6111: 2857 case 6502: 2858 case 6855: 2859 case 7531: 2860 case 7750: 2861 case 8627: 2862 return "WO"; 2863 break; 2864 case 5603: 2865 case 5685: 2866 case 5867: 2867 case 5889: 2868 case 5956: 2869 case 6044: 2870 case 6377: 2871 case 6648: 2872 case 6668: 2873 case 6672: 2874 case 6820: 2875 case 6927: 2876 case 6935: 2877 case 6992: 2878 case 7036: 2879 case 7080: 2880 case 7227: 2881 case 7485: 2882 case 7641: 2883 case 8036: 2884 case 8045: 2885 case 8077: 2886 case 8258: 2887 case 8640: 2888 case 8789: 2889 return "WU"; 2890 break; 2891 case 5750: 2892 case 5766: 2893 case 5884: 2894 case 5913: 2895 case 6130: 2896 case 6163: 2897 case 6191: 2898 case 6241: 2899 case 6381: 2900 case 6567: 2901 case 6630: 2902 case 6750: 2903 case 6827: 2904 case 6832: 2905 case 6979: 2906 case 7050: 2907 case 7184: 2908 case 7356: 2909 case 7456: 2910 case 7474: 2911 case 7604: 2912 case 7668: 2913 case 7689: 2914 case 7691: 2915 case 8010: 2916 case 8122: 2917 case 8265: 2918 case 8303: 2919 case 8312: 2920 case 8410: 2921 case 8424: 2922 case 8443: 2923 case 8449: 2924 case 8466: 2925 case 8521: 2926 case 8791: 2927 return "XI"; 2928 break; 2929 case 6340: 2930 case 6582: 2931 case 6958: 2932 case 7206: 2933 case 7252: 2934 case 7744: 2935 case 8093: 2936 case 8333: 2937 case 8779: 2938 return "XIA"; 2939 break; 2940 case 5794: 2941 case 5823: 2942 case 6040: 2943 case 6118: 2944 case 6226: 2945 case 6513: 2946 case 6593: 2947 case 6963: 2948 case 7021: 2949 case 7515: 2950 case 7662: 2951 case 7676: 2952 case 8034: 2953 case 8079: 2954 case 8225: 2955 case 8358: 2956 case 8444: 2957 case 8503: 2958 case 8548: 2959 case 8549: 2960 case 8617: 2961 return "XIAN"; 2962 break; 2963 case 6028: 2964 case 6157: 2965 case 6635: 2966 case 6652: 2967 case 7088: 2968 case 7129: 2969 case 8313: 2970 case 8663: 2971 case 8747: 2972 return "XIANG"; 2973 break; 2974 case 6356: 2975 case 6537: 2976 case 6876: 2977 case 6948: 2978 case 7071: 2979 case 7115: 2980 case 7241: 2981 case 7253: 2982 case 8257: 2983 case 8367: 2984 case 8379: 2985 case 8744: 2986 return "XIAO"; 2987 break; 2988 case 5741: 2989 case 5784: 2990 case 5936: 2991 case 5938: 2992 case 6215: 2993 case 6302: 2994 case 6619: 2995 case 6661: 2996 case 6845: 2997 case 6912: 2998 case 6966: 2999 case 7105: 3000 case 7151: 3001 case 7331: 3002 case 7339: 3003 case 8583: 3004 return "XIE"; 3005 break; 3006 case 5622: 3007 case 6016: 3008 case 7431: 3009 case 7607: 3010 case 8646: 3011 return "XIN"; 3012 break; 3013 case 5874: 3014 case 6084: 3015 case 6309: 3016 case 6712: 3017 case 7742: 3018 return "XING"; 3019 break; 3020 case 6026: 3021 return "XIONG"; 3022 break; 3023 case 6361: 3024 case 6522: 3025 case 6642: 3026 case 6651: 3027 case 6869: 3028 case 8028: 3029 case 8587: 3030 case 8759: 3031 return "XIU"; 3032 break; 3033 case 5828: 3034 case 5935: 3035 case 5955: 3036 case 6203: 3037 case 6810: 3038 case 6851: 3039 case 7179: 3040 case 7282: 3041 case 7667: 3042 case 7776: 3043 case 8167: 3044 case 8458: 3045 case 8515: 3046 return "XU"; 3047 break; 3048 case 5756: 3049 case 5846: 3050 case 6170: 3051 case 6279: 3052 case 6789: 3053 case 6854: 3054 case 6886: 3055 case 7215: 3056 case 7324: 3057 case 7449: 3058 case 7637: 3059 case 7651: 3060 case 7759: 3061 case 7871: 3062 case 7964: 3063 case 8071: 3064 return "XUAN"; 3065 break; 3066 case 5842: 3067 case 7720: 3068 case 8529: 3069 case 8708: 3070 return "XUE"; 3071 break; 3072 case 5767: 3073 case 5908: 3074 case 5987: 3075 case 6087: 3076 case 6101: 3077 case 6206: 3078 case 6225: 3079 case 6530: 3080 case 6563: 3081 case 6620: 3082 case 6694: 3083 case 6813: 3084 case 6817: 3085 case 7454: 3086 case 8131: 3087 case 8524: 3088 case 8664: 3089 return "XUN"; 3090 break; 3091 case 5683: 3092 case 5975: 3093 case 6275: 3094 case 6512: 3095 case 6934: 3096 case 7011: 3097 case 7180: 3098 case 7266: 3099 case 7518: 3100 case 7728: 3101 case 7793: 3102 case 8073: 3103 return "YA"; 3104 break; 3105 case 5641: 3106 case 5645: 3107 case 5718: 3108 case 5740: 3109 case 5780: 3110 case 5861: 3111 case 5917: 3112 case 5919: 3113 case 6030: 3114 case 6146: 3115 case 6535: 3116 case 6691: 3117 case 6738: 3118 case 6753: 3119 case 6846: 3120 case 6857: 3121 case 6991: 3122 case 7044: 3123 case 7192: 3124 case 7360: 3125 case 7444: 3126 case 7557: 3127 case 7645: 3128 case 7827: 3129 case 8359: 3130 case 8506: 3131 case 8742: 3132 case 8748: 3133 case 8790: 3134 return "YAN"; 3135 break; 3136 case 6564: 3137 case 6683: 3138 case 7630: 3139 case 7640: 3140 case 7706: 3141 case 8253: 3142 case 8717: 3143 return "YANG"; 3144 break; 3145 case 5618: 3146 case 5619: 3147 case 6326: 3148 case 6542: 3149 case 6570: 3150 case 7159: 3151 case 7182: 3152 case 7235: 3153 case 7387: 3154 case 7455: 3155 case 7540: 3156 case 7902: 3157 case 8046: 3158 case 8126: 3159 case 8477: 3160 case 8705: 3161 return "YAO"; 3162 break; 3163 case 5644: 3164 case 5843: 3165 case 5894: 3166 case 6262: 3167 case 7442: 3168 case 7639: 3169 case 7884: 3170 return "YE"; 3171 break; 3172 case 5655: 3173 case 5657: 3174 case 5670: 3175 case 5693: 3176 case 5711: 3177 case 5817: 3178 case 5961: 3179 case 5992: 3180 case 6018: 3181 case 6051: 3182 case 6072: 3183 case 6218: 3184 case 6236: 3185 case 6240: 3186 case 6258: 3187 case 6314: 3188 case 6329: 3189 case 6355: 3190 case 6362: 3191 case 6441: 3192 case 6470: 3193 case 6527: 3194 case 6558: 3195 case 6602: 3196 case 6634: 3197 case 6688: 3198 case 6689: 3199 case 6708: 3200 case 6884: 3201 case 6938: 3202 case 7068: 3203 case 7143: 3204 case 7376: 3205 case 7383: 3206 case 7461: 3207 case 7629: 3208 case 7658: 3209 case 7784: 3210 case 7838: 3211 case 7955: 3212 case 7978: 3213 case 8074: 3214 case 8089: 3215 case 8115: 3216 case 8120: 3217 case 8270: 3218 case 8415: 3219 case 8464: 3220 case 8472: 3221 case 8493: 3222 case 8780: 3223 return "YI"; 3224 break; 3225 case 5623: 3226 case 5920: 3227 case 5983: 3228 case 6007: 3229 case 6065: 3230 case 6337: 3231 case 6419: 3232 case 6594: 3233 case 6625: 3234 case 6806: 3235 case 7519: 3236 case 7887: 3237 case 8111: 3238 case 8230: 3239 case 8615: 3240 case 8624: 3241 return "YIN"; 3242 break; 3243 case 5788: 3244 case 5911: 3245 case 6067: 3246 case 6094: 3247 case 6126: 3248 case 6151: 3249 case 6186: 3250 case 6292: 3251 case 6451: 3252 case 6663: 3253 case 6862: 3254 case 6875: 3255 case 6913: 3256 case 7188: 3257 case 7212: 3258 case 7326: 3259 case 7584: 3260 case 8048: 3261 case 8108: 3262 case 8203: 3263 case 8331: 3264 return "YING"; 3265 break; 3266 case 6401: 3267 return "YO"; 3268 break; 3269 case 5724: 3270 case 5953: 3271 case 6013: 3272 case 6415: 3273 case 6728: 3274 case 7163: 3275 case 7962: 3276 case 8014: 3277 case 8711: 3278 case 8751: 3279 return "YONG"; 3280 break; 3281 case 5653: 3282 case 5692: 3283 case 5707: 3284 case 6112: 3285 case 6115: 3286 case 6121: 3287 case 6347: 3288 case 6483: 3289 case 6922: 3290 case 7254: 3291 case 7364: 3292 case 7527: 3293 case 7880: 3294 case 8064: 3295 case 8236: 3296 case 8242: 3297 case 8286: 3298 case 8647: 3299 case 8778: 3300 case 8788: 3301 return "YOU"; 3302 break; 3303 case 5614: 3304 case 5625: 3305 case 5681: 3306 case 5722: 3307 case 5836: 3308 case 5845: 3309 case 6139: 3310 case 6187: 3311 case 6277: 3312 case 6484: 3313 case 6486: 3314 case 6546: 3315 case 6592: 3316 case 6632: 3317 case 6637: 3318 case 6655: 3319 case 6748: 3320 case 6987: 3321 case 6993: 3322 case 7005: 3323 case 7090: 3324 case 7204: 3325 case 7437: 3326 case 7476: 3327 case 7573: 3328 case 7603: 3329 case 7622: 3330 case 7647: 3331 case 7659: 3332 case 7718: 3333 case 7858: 3334 case 8033: 3335 case 8054: 3336 case 8085: 3337 case 8086: 3338 case 8130: 3339 case 8133: 3340 case 8266: 3341 case 8285: 3342 case 8336: 3343 case 8407: 3344 case 8408: 3345 case 8607: 3346 case 8625: 3347 return "YU"; 3348 break; 3349 case 5989: 3350 case 6011: 3351 case 6282: 3352 case 6768: 3353 case 7034: 3354 case 7205: 3355 case 7358: 3356 case 7528: 3357 case 7783: 3358 case 8016: 3359 case 8302: 3360 case 8378: 3361 case 8629: 3362 return "YUAN"; 3363 break; 3364 case 5763: 3365 case 6914: 3366 case 7348: 3367 case 7530: 3368 case 7865: 3369 return "YUE"; 3370 break; 3371 case 5909: 3372 case 6031: 3373 case 6581: 3374 case 6702: 3375 case 6719: 3376 case 7101: 3377 case 7225: 3378 case 7370: 3379 case 7432: 3380 case 7521: 3381 case 7657: 3382 return "YUN"; 3383 break; 3384 case 6257: 3385 case 6338: 3386 return "ZA"; 3387 break; 3388 case 6544: 3389 case 7162: 3390 return "ZAI"; 3391 break; 3392 case 7222: 3393 case 7435: 3394 case 8402: 3395 case 8456: 3396 case 8485: 3397 case 8641: 3398 return "ZAN"; 3399 break; 3400 case 6242: 3401 case 7064: 3402 case 7416: 3403 return "ZANG"; 3404 break; 3405 case 6380: 3406 return "ZAO"; 3407 break; 3408 case 5638: 3409 case 8369: 3410 case 5651: 3411 case 6385: 3412 case 6493: 3413 case 6937: 3414 case 7430: 3415 case 8348: 3416 case 8423: 3417 return "ZE"; 3418 break; 3419 return "ZEI"; 3420 break; 3421 case 5858: 3422 return "ZEN"; 3423 break; 3424 case 7153: 3425 case 7421: 3426 case 7832: 3427 case 7913: 3428 return "ZENG"; 3429 break; 3430 case 6610: 3431 case 6274: 3432 case 6324: 3433 case 6369: 3434 case 6378: 3435 case 7736: 3436 case 8068: 3437 case 8238: 3438 case 8794: 3439 return "ZHA"; 3440 break; 3441 case 7746: 3442 case 8109: 3443 return "ZHAI"; 3444 break; 3445 case 5862: 3446 case 6288: 3447 case 7625: 3448 return "ZHAN"; 3449 break; 3450 case 5675: 3451 case 5921: 3452 case 6504: 3453 case 6554: 3454 case 6615: 3455 case 7049: 3456 case 7216: 3457 case 8315: 3458 return "ZHANG"; 3459 break; 3460 case 5815: 3461 case 7294: 3462 case 7840: 3463 case 8341: 3464 return "ZHAO"; 3465 break; 3466 case 5856: 3467 case 6301: 3468 case 7247: 3469 case 7392: 3470 case 7761: 3471 case 8049: 3472 case 8162: 3473 case 8256: 3474 case 8487: 3475 return "ZHE"; 3476 break; 3477 case 5958: 3478 case 6172: 3479 case 6805: 3480 case 7139: 3481 case 7269: 3482 case 7327: 3483 case 7384: 3484 case 7466: 3485 case 7551: 3486 case 7562: 3487 case 7685: 3488 case 7819: 3489 case 8001: 3490 case 8018: 3491 case 8380: 3492 return "ZHEN"; 3493 break; 3494 case 5826: 3495 case 6531: 3496 case 6571: 3497 case 7859: 3498 case 7903: 3499 case 8361: 3500 return "ZHENG"; 3501 break; 3502 case 5620: 3503 case 5876: 3504 case 5904: 3505 case 5990: 3506 case 6038: 3507 case 6293: 3508 case 6489: 3509 case 6669: 3510 case 6973: 3511 case 6975: 3512 case 7079: 3513 case 7246: 3514 case 7255: 3515 case 7257: 3516 case 7268: 3517 case 7382: 3518 case 7389: 3519 case 7462: 3520 case 7553: 3521 case 7589: 3522 case 7677: 3523 case 7683: 3524 case 7773: 3525 case 7984: 3526 case 8026: 3527 case 8075: 3528 case 8246: 3529 case 8474: 3530 case 8505: 3531 case 8537: 3532 case 8557: 3533 case 8560: 3534 case 8584: 3535 case 8603: 3536 return "ZHI"; 3537 break; 3538 case 5803: 3539 case 7981: 3540 case 8314: 3541 case 8417: 3542 case 8564: 3543 return "ZHONG"; 3544 break; 3545 case 6107: 3546 case 6390: 3547 case 7008: 3548 case 7091: 3549 case 7107: 3550 case 7548: 3551 case 7756: 3552 case 8406: 3553 case 8492: 3554 return "ZHOU"; 3555 break; 3556 case 5689: 3557 case 5710: 3558 case 5905: 3559 case 6049: 3560 case 6079: 3561 case 6808: 3562 case 6830: 3563 case 6883: 3564 case 7244: 3565 case 7338: 3566 case 7345: 3567 case 7636: 3568 case 7889: 3569 case 8070: 3570 case 8081: 3571 case 8335: 3572 case 8371: 3573 case 8422: 3574 case 8467: 3575 case 8578: 3576 case 8770: 3577 return "ZHU"; 3578 break; 3579 return "ZHUA"; 3580 break; 3581 return "ZHUAI"; 3582 break; 3583 case 6389: 3584 case 6645: 3585 case 8207: 3586 return "ZHUAN"; 3587 break; 3588 case 5755: 3589 return "ZHUANG"; 3590 break; 3591 case 6723: 3592 case 7077: 3593 case 7136: 3594 return "ZHUI"; 3595 break; 3596 case 7538: 3597 case 8124: 3598 return "ZHUN"; 3599 break; 3600 case 5730: 3601 case 5834: 3602 case 6310: 3603 case 6823: 3604 case 6835: 3605 case 6910: 3606 case 7644: 3607 case 7690: 3608 case 7729: 3609 case 7977: 3610 return "ZHUO"; 3611 break; 3612 case 5849: 3613 case 6549: 3614 case 7002: 3615 case 7060: 3616 case 7127: 3617 case 7287: 3618 case 7402: 3619 case 7463: 3620 case 7707: 3621 case 7786: 3622 case 7937: 3623 case 7986: 3624 case 8172: 3625 case 8342: 3626 case 8450: 3627 case 8484: 3628 case 8594: 3629 case 8604: 3630 case 8623: 3631 case 8686: 3632 case 8758: 3633 return "ZI"; 3634 break; 3635 case 5744: 3636 case 7574: 3637 case 8453: 3638 return "ZONG"; 3639 break; 3640 case 5833: 3641 case 5878: 3642 case 5924: 3643 case 7067: 3644 case 8677: 3645 return "ZOU"; 3646 break; 3647 case 5762: 3648 case 6147: 3649 case 7963: 3650 return "ZU"; 3651 break; 3652 case 6312: 3653 case 7158: 3654 case 8582: 3655 return "ZUAN"; 3656 break; 3657 case 6209: 3658 return "ZUI"; 3659 break; 3660 case 6304: 3661 case 7355: 3662 case 8714: 3663 return "ZUN"; 3664 break; 3665 case 5872: 3666 case 6382: 3667 case 6460: 3668 case 6684: 3669 case 7549: 3670 case 7681: 3671 return "ZUO"; 3672 break; 3673 default: 3674 if(code>=1601 && code<=1602) 3675 { 3676 return "A"; 3677 break; 3678 } 3679 if(code>=1603 && code<=1615) 3680 { 3681 return "AI"; 3682 break; 3683 } 3684 if(code>=1616 && code<=1624) 3685 { 3686 return "AN"; 3687 break; 3688 } 3689 if(code>=1625 && code<=1627) 3690 { 3691 return "ANG"; 3692 break; 3693 } 3694 if(code>=1628 && code<=1636) 3695 { 3696 return "AO"; 3697 break; 3698 } 3699 if(code>=1637 && code<=1654) 3700 { 3701 return "BA"; 3702 break; 3703 } 3704 if(code>=1655 && code<=1662) 3705 { 3706 return "BAI"; 3707 break; 3708 } 3709 if(code>=1663 && code<=1677) 3710 { 3711 return "BAN"; 3712 break; 3713 } 3714 if(code>=1678 && code<=1689) 3715 { 3716 return "BANG"; 3717 break; 3718 } 3719 if(code>=1690 && code<=1712) 3720 { 3721 return "BAO"; 3722 break; 3723 } 3724 if(code>=1713 && code<=1727) 3725 { 3726 return "BEI"; 3727 break; 3728 } 3729 if(code>=1728 && code<=1731) 3730 { 3731 return "BEN"; 3732 break; 3733 } 3734 if(code>=1732 && code<=1737) 3735 { 3736 return "BENG"; 3737 break; 3738 } 3739 if(code>1738 && code<=1761) 3740 { 3741 return "BI"; 3742 break; 3743 } 3744 if(code>=1762 && code<=1773) 3745 { 3746 return "BIAN"; 3747 break; 3748 } 3749 if(code>=1774 && code<=1777) 3750 { 3751 return "BIAO"; 3752 break; 3753 } 3754 if(code>=1778 && code<=1781) 3755 { 3756 return "BIE"; 3757 break; 3758 } 3759 if(code>=1782 && code<=1787) 3760 { 3761 return "BIN"; 3762 break; 3763 } 3764 if(code>=1788 && code<=1794) 3765 { 3766 return "BING"; 3767 break; 3768 } 3769 if(code>=1801 && code<=1802) 3770 { 3771 return "BING"; 3772 break; 3773 } 3774 if(code>=1803 && code<=1821) 3775 { 3776 return "BO"; 3777 break; 3778 } 3779 if(code>=1822 && code<=1832) 3780 { 3781 return "BU"; 3782 break; 3783 } 3784 if(code==1833) 3785 { 3786 return "CA"; 3787 break; 3788 } 3789 if(code>=1834 && code<=1844) 3790 { 3791 return "CAI"; 3792 break; 3793 } 3794 if(code>=1845 && code<=1851) 3795 { 3796 return "CAN"; 3797 break; 3798 } 3799 if(code>=1852 && code<=1856) 3800 { 3801 return "CANG"; 3802 break; 3803 } 3804 if(code>=1857 && code<=1861) 3805 { 3806 return "CAO"; 3807 break; 3808 } 3809 if(code>=1862 && code<=1866) 3810 { 3811 return "CE"; 3812 break; 3813 } 3814 if(code>=1867 && code<=1868) 3815 { 3816 return "CENG"; 3817 break; 3818 } 3819 if(code>=1869 && code<=1879) 3820 { 3821 return "CHA"; 3822 break; 3823 } 3824 if(code>=1880 && code<=1882) 3825 { 3826 return "CHAI"; 3827 break; 3828 } 3829 if(code>=1883 && code<=1892) 3830 { 3831 return "CHAN"; 3832 break; 3833 } 3834 if(code>=1893 && code<=1911) 3835 { 3836 return "CHANG"; 3837 break; 3838 } 3839 if(code>=1912 && code<=1920) 3840 { 3841 return "CHAO"; 3842 break; 3843 } 3844 if(code>=1921 && code<=1926) 3845 { 3846 return "CHE"; 3847 break; 3848 } 3849 if(code>=1927 && code<=1936) 3850 { 3851 return "CHEN"; 3852 break; 3853 } 3854 if(code>=1937 && code<=1951) 3855 { 3856 return "CHENG"; 3857 break; 3858 } 3859 if(code>=1952 && code<=1967) 3860 { 3861 return "CHI"; 3862 break; 3863 } 3864 if(code>=1968 && code<=1972) 3865 { 3866 return "CHONG"; 3867 break; 3868 } 3869 if(code>=1973 && code<=1984) 3870 { 3871 return "CHOU"; 3872 break; 3873 } 3874 if(code>=1985 && code<=2006) 3875 { 3876 return "CHU"; 3877 break; 3878 } 3879 if(code==2007) 3880 { 3881 return "CHUAI"; 3882 break; 3883 } 3884 if(code>=2008 && code<=2014) 3885 { 3886 return "CHUAN"; 3887 break; 3888 } 3889 if(code>=2015 && code<=2020) 3890 { 3891 return "CHUANG"; 3892 break; 3893 } 3894 if(code>=2021 && code<=2025) 3895 { 3896 return "CHUI"; 3897 break; 3898 } 3899 if(code>=2026 && code<=2032) 3900 { 3901 return "CHUN"; 3902 break; 3903 } 3904 if(code>=2033 && code<=2034) 3905 { 3906 return "CHUO"; 3907 break; 3908 } 3909 if(code>=2035 && code<=2046) 3910 { 3911 return "CI"; 3912 break; 3913 } 3914 if(code>=2047 && code<=2052) 3915 { 3916 return "CONG"; 3917 break; 3918 } 3919 if(code>=2054 && code<=2057) 3920 { 3921 return "CU"; 3922 break; 3923 } 3924 if(code>=2058 && code<=2060) 3925 { 3926 return "CUAN"; 3927 break; 3928 } 3929 if(code>=2061 && code<=2068) 3930 { 3931 return "CUI"; 3932 break; 3933 } 3934 if(code>=2069 && code<=2071) 3935 { 3936 return "CUN"; 3937 break; 3938 } 3939 if(code>=2072 && code<=2077) 3940 { 3941 return "CUO"; 3942 break; 3943 } 3944 if(code>=2078 && code<=2083) 3945 { 3946 return "DA"; 3947 break; 3948 } 3949 if(code>=2084 && code<=2094) 3950 { 3951 return "DAI"; 3952 break; 3953 } 3954 if(code>=2102 && code<=2116) 3955 { 3956 return "DAN"; 3957 break; 3958 } 3959 if(code>=2117 && code<=2121) 3960 { 3961 return "DANG"; 3962 break; 3963 } 3964 if(code>=2122 && code<=2133) 3965 { 3966 return "DAO"; 3967 break; 3968 } 3969 if(code>=2134 && code<=2136) 3970 { 3971 return "DE"; 3972 break; 3973 } 3974 if(code>=2137 && code<=2143) 3975 { 3976 return "DENG"; 3977 break; 3978 } 3979 if(code>=2144 && code<=2162) 3980 { 3981 return "DI"; 3982 break; 3983 } 3984 if(code>=2163 && code<=2178) 3985 { 3986 return "DIAN"; 3987 break; 3988 } 3989 if(code>=2179 && code<=2187) 3990 { 3991 return "DIAO"; 3992 break; 3993 } 3994 if(code>=2188 && code<=2194) 3995 { 3996 return "DIE"; 3997 break; 3998 } 3999 if(code>=2201 && code<=2209) 4000 { 4001 return "DING"; 4002 break; 4003 } 4004 if(code==2210) 4005 { 4006 return "DIU"; 4007 break; 4008 } 4009 if(code>=2211 && code<=2220) 4010 { 4011 return "DONG"; 4012 break; 4013 } 4014 if(code>=2221 && code<=2227) 4015 { 4016 return "DOU"; 4017 break; 4018 } 4019 if(code>=2228 && code<=2242) 4020 { 4021 return "DU"; 4022 break; 4023 } 4024 if(code>=2243 && code<=2248) 4025 { 4026 return "DUAN"; 4027 break; 4028 } 4029 if(code>=2249 && code<=2252) 4030 { 4031 return "DUI"; 4032 break; 4033 } 4034 if(code>=2253 && code<=2261) 4035 { 4036 return "DUN"; 4037 break; 4038 } 4039 if(code>=2262 && code<=2273) 4040 { 4041 return "DUO"; 4042 break; 4043 } 4044 if(code>=2274 && code<=2286) 4045 { 4046 return "E"; 4047 break; 4048 } 4049 if(code==2287) 4050 { 4051 return "EN"; 4052 break; 4053 } 4054 if(code>=2288 && code<=2231) 4055 { 4056 return "ER"; 4057 break; 4058 } 4059 if(code>=2302 && code<=2309) 4060 { 4061 return "FA"; 4062 break; 4063 } 4064 if(code>=2310 && code<=2326) 4065 { 4066 return "FAN"; 4067 break; 4068 } 4069 if(code>=2327 && code<=2337) 4070 { 4071 return "FANG"; 4072 break; 4073 } 4074 if(code>=2338 && code<=2349) 4075 { 4076 return "FEI"; 4077 break; 4078 } 4079 if(code>=2350 && code<=2364) 4080 { 4081 return "FEN"; 4082 break; 4083 } 4084 if(code>=2365 && code<=2379) 4085 { 4086 return "FENG"; 4087 break; 4088 } 4089 if(code==2380) 4090 { 4091 return "FO"; 4092 break; 4093 } 4094 if(code==2381) 4095 { 4096 return "FOU"; 4097 break; 4098 } 4099 if(code>=2382 && code<=2432) 4100 { 4101 return "FU"; 4102 break; 4103 } 4104 if(code>=2435 && code<=2440) 4105 { 4106 return "GAI"; 4107 break; 4108 } 4109 if(code>=2441 && code<=2451) 4110 { 4111 return "GAN"; 4112 break; 4113 } 4114 if(code>=2452 && code<=2460) 4115 { 4116 return "GANG"; 4117 break; 4118 } 4119 if(code>=2461 && code<=2470) 4120 { 4121 return "GAO"; 4122 break; 4123 } 4124 if(code>=2471 && code<=2487) 4125 { 4126 return "GE"; 4127 break; 4128 } 4129 if(code==2488) 4130 { 4131 return "GEI"; 4132 break; 4133 } 4134 if(code>=2489 && code<=2490) 4135 { 4136 return "GEN"; 4137 break; 4138 } 4139 if(code>=2491 && code<=2503) 4140 { 4141 return "GENG"; 4142 break; 4143 } 4144 if(code>=2504 && code<=2518) 4145 { 4146 return "GONG"; 4147 break; 4148 } 4149 if(code>=2519 && code<=2527) 4150 { 4151 return "GOU"; 4152 break; 4153 } 4154 if(code>=2528 && code<=2545) 4155 { 4156 return "GU"; 4157 break; 4158 } 4159 if(code>=2546 && code<=2551) 4160 { 4161 return "GUA"; 4162 break; 4163 } 4164 if(code>=2552 && code<=2554) 4165 { 4166 return "GUAI"; 4167 break; 4168 } 4169 if(code>=2555 && code<=2565) 4170 { 4171 return "GUAN"; 4172 break; 4173 } 4174 if(code>=2566 && code<=2568) 4175 { 4176 return "GUANG"; 4177 break; 4178 } 4179 if(code>=2569 && code<=2584) 4180 { 4181 return "GUI"; 4182 break; 4183 } 4184 if(code>=2585 && code<=2587) 4185 { 4186 return "GUN"; 4187 break; 4188 } 4189 if(code>=2588 && code<=2593) 4190 { 4191 return "GUO"; 4192 break; 4193 } 4194 if(code==2594) 4195 { 4196 return "HA"; 4197 break; 4198 } 4199 if(code>=2601 && code<=2607) 4200 { 4201 return "HAI"; 4202 break; 4203 } 4204 if(code>=2608 && code<=2626) 4205 { 4206 return "HAN"; 4207 break; 4208 } 4209 if(code>=2627 && code<=2629) 4210 { 4211 return "HANG"; 4212 break; 4213 } 4214 if(code>=2630 && code<=2638) 4215 { 4216 return "HAO"; 4217 break; 4218 } 4219 if(code>=2639 && code<=2656) 4220 { 4221 return "HE"; 4222 break; 4223 } 4224 if(code>=2657 && code<=2658) 4225 { 4226 return "HEI"; 4227 break; 4228 } 4229 if(code>=2659 && code<=2662) 4230 { 4231 return "HEN"; 4232 break; 4233 } 4234 if(code>=2663 && code<=2667) 4235 { 4236 return "HENG"; 4237 break; 4238 } 4239 if(code>=2668 && code<=2676) 4240 { 4241 return "HONG"; 4242 break; 4243 } 4244 if(code>=2677 && code<=2683) 4245 { 4246 return "HOU"; 4247 break; 4248 } 4249 if(code>=2684 && code<=2707) 4250 { 4251 return "HU"; 4252 break; 4253 } 4254 if(code>=2708 && code<=2716) 4255 { 4256 return "HUA"; 4257 break; 4258 } 4259 if(code>=2717 && code<=2721) 4260 { 4261 return "HUAI"; 4262 break; 4263 } 4264 if(code>=2722 && code<=2735) 4265 { 4266 return "HUAN"; 4267 break; 4268 } 4269 if(code>=2736 && code<=2749) 4270 { 4271 return "HUANG"; 4272 break; 4273 } 4274 if(code>=2750 && code<=2770) 4275 { 4276 return "HUI"; 4277 break; 4278 } 4279 if(code>=2771 && code<=2776) 4280 { 4281 return "HUN"; 4282 break; 4283 } 4284 if(code>=2777 && code<=2786) 4285 { 4286 return "HUO"; 4287 break; 4288 } 4289 if(code>=2787 && code<=2845) 4290 { 4291 return "JI"; 4292 break; 4293 } 4294 if(code>=2846 && code<=2862) 4295 { 4296 return "JIA"; 4297 break; 4298 } 4299 if(code>=2863 && code<=2908) 4300 { 4301 return "JIAN"; 4302 break; 4303 } 4304 if(code>=2909 && code<=2921) 4305 { 4306 return "JIANG"; 4307 break; 4308 } 4309 if(code>=2922 && code<=2949) 4310 { 4311 return "JIAO"; 4312 break; 4313 } 4314 if(code>=2950 && code<=2976) 4315 { 4316 return "JIE"; 4317 break; 4318 } 4319 if(code>=2977 && code<=3002) 4320 { 4321 return "JIN"; 4322 break; 4323 } 4324 if(code>=3003 && code<=3027) 4325 { 4326 return "JING"; 4327 break; 4328 } 4329 if(code>=3028 && code<=3029) 4330 { 4331 return "JIONG"; 4332 break; 4333 } 4334 if(code>=3030 && code<=3046) 4335 { 4336 return "JIU"; 4337 break; 4338 } 4339 if(code>=3047 && code<=3071) 4340 { 4341 return "JU"; 4342 break; 4343 } 4344 if(code>=3072 && code<=3078) 4345 { 4346 return "JUAN"; 4347 break; 4348 } 4349 if(code>=3079 && code<=3088) 4350 { 4351 return "JUE"; 4352 break; 4353 } 4354 if(code>=3089 && code<=3105) 4355 { 4356 return "JUN"; 4357 break; 4358 } 4359 if(code>=3106 && code<=3109) 4360 { 4361 return "KA"; 4362 break; 4363 } 4364 if(code>=3110 && code<=3114) 4365 { 4366 return "KAI"; 4367 break; 4368 } 4369 if(code>=3115 && code<=3120) 4370 { 4371 return "KAN"; 4372 break; 4373 } 4374 if(code>=3121 && code<=3127) 4375 { 4376 return "KANG"; 4377 break; 4378 } 4379 if(code>=3128 && code<=3131) 4380 { 4381 return "KAO"; 4382 break; 4383 } 4384 if(code>=3132 && code<=3146) 4385 { 4386 return "KE"; 4387 break; 4388 } 4389 if(code>=3147 && code<=3150) 4390 { 4391 return "KEN"; 4392 break; 4393 } 4394 if(code>=3151 && code<=3152) 4395 { 4396 return "KENG"; 4397 break; 4398 } 4399 if(code>=3153 && code<=3156) 4400 { 4401 return "KONG"; 4402 break; 4403 } 4404 if(code>=3157 && code<=3160) 4405 { 4406 return "KOU"; 4407 break; 4408 } 4409 if(code>=3161 && code<=3167) 4410 { 4411 return "KU"; 4412 break; 4413 } 4414 if(code>=3168 && code<=3172) 4415 { 4416 return "KUA"; 4417 break; 4418 } 4419 if(code>=3173 && code<=3176) 4420 { 4421 return "KUAI"; 4422 break; 4423 } 4424 if(code>=3177 && code<=3178) 4425 { 4426 return "KUAN"; 4427 break; 4428 } 4429 if(code>=3179 && code<=3186) 4430 { 4431 return "KUANG"; 4432 break; 4433 } 4434 if(code>=3187 && code<=3203) 4435 { 4436 return "KUI"; 4437 break; 4438 } 4439 if(code>=3204 && code<=3207) 4440 { 4441 return "KUN"; 4442 break; 4443 } 4444 if(code>=3208 && code<=3211) 4445 { 4446 return "KUO"; 4447 break; 4448 } 4449 if(code>=3212 && code<=3218) 4450 { 4451 return "LA"; 4452 break; 4453 } 4454 if(code>=3219 && code<=3221) 4455 { 4456 return "LAI"; 4457 break; 4458 } 4459 if(code>=3222 && code<=3236) 4460 { 4461 return "LAN"; 4462 break; 4463 } 4464 if(code>=3237 && code<=3243) 4465 { 4466 return "LANG"; 4467 break; 4468 } 4469 if(code>=3244 && code<=3252) 4470 { 4471 return "LAO"; 4472 break; 4473 } 4474 if(code>=3253 && code<=3254) 4475 { 4476 return "LE"; 4477 break; 4478 } 4479 if(code>=3255 && code<=3265) 4480 { 4481 return "LEI"; 4482 break; 4483 } 4484 if(code>=3266 && code<=3268) 4485 { 4486 return "LENG"; 4487 break; 4488 } 4489 if(code>=3269 && code<=3308) 4490 { 4491 return "LI"; 4492 } 4493 if(code==3309) 4494 { 4495 return "LIA"; 4496 break; 4497 } 4498 if(code>=3310 && code<=3323) 4499 { 4500 return "LIAN"; 4501 break; 4502 } 4503 if(code>=3324 && code<=3334) 4504 { 4505 return "LIANG"; 4506 break; 4507 } 4508 if(code>=3335 && code<=3347) 4509 { 4510 return "LIAO"; 4511 break; 4512 } 4513 if(code>=3348 && code<=3352) 4514 { 4515 return "LIE"; 4516 break; 4517 } 4518 if(code>=3353 && code<=3363) 4519 { 4520 return "LIN"; 4521 break; 4522 } 4523 if(code>=3364 && code<=3378) 4524 { 4525 return "LING"; 4526 break; 4527 } 4528 if(code>=3379 && code<=3389) 4529 { 4530 return "LIU"; 4531 break; 4532 } 4533 if(code>=3390 && code<=3404) 4534 { 4535 return "LONG"; 4536 break; 4537 } 4538 if(code>=3405 && code<=3410) 4539 { 4540 return "LOU"; 4541 break; 4542 } 4543 if(code>=3411 && code<=3444) 4544 { 4545 return "LU"; 4546 break; 4547 } 4548 if(code>=3445 && code<=3450) 4549 { 4550 return "LUAN"; 4551 break; 4552 } 4553 if(code>=3451 && code<=3452) 4554 { 4555 return "LUE"; 4556 break; 4557 } 4558 if(code>=3453 && code<=3459) 4559 { 4560 return "LUN"; 4561 break; 4562 } 4563 if(code>=3460 && code<=3471) 4564 { 4565 return "LUO"; 4566 break; 4567 } 4568 if(code>=3472 && code<=3480) 4569 { 4570 return "MA"; 4571 break; 4572 } 4573 if(code>=3481 && code<=3486) 4574 { 4575 return "MAI"; 4576 break; 4577 } 4578 if(code>=3487 && code<=3501) 4579 { 4580 return "MAN"; 4581 break; 4582 } 4583 if(code>=3502 && code<=3507) 4584 { 4585 return "MANG"; 4586 break; 4587 } 4588 if(code>=3508 && code<=3519) 4589 { 4590 return "MAO"; 4591 break; 4592 } 4593 if(code==3520) 4594 { 4595 return "ME"; 4596 break; 4597 } 4598 if(code>=3521 && code<=3536) 4599 { 4600 return "MEI"; 4601 break; 4602 } 4603 if(code>=3537 && code<=3539) 4604 { 4605 return "MEN"; 4606 break; 4607 } 4608 if(code>=3540 && code<=3547) 4609 { 4610 return "MENG"; 4611 break; 4612 } 4613 if(code>=3548 && code<=3561) 4614 { 4615 return "MI"; 4616 } 4617 if(code>=3562 && code<=3570) 4618 { 4619 return "MIAN"; 4620 break; 4621 } 4622 if(code>=3571 && code<=3578) 4623 { 4624 return "MIAO"; 4625 break; 4626 } 4627 if(code>=3579 && code<=3580) 4628 { 4629 return "MIE"; 4630 break; 4631 } 4632 if(code>=3581 && code<=3586) 4633 { 4634 return "MIN"; 4635 break; 4636 } 4637 if(code>=3587 && code<=3592) 4638 { 4639 return "MING"; 4640 break; 4641 } 4642 if(code==3593) 4643 { 4644 return "MIU"; 4645 break; 4646 } 4647 if(code>=3594 && code<=3616) 4648 { 4649 return "MO"; 4650 break; 4651 } 4652 if(code>=3617 && code<=3619) 4653 { 4654 return "MOU"; 4655 break; 4656 } 4657 if(code>=3620 && code<=3634) 4658 { 4659 return "MU"; 4660 break; 4661 } 4662 if(code>=3635 && code<=3641) 4663 { 4664 return "NA"; 4665 break; 4666 } 4667 if(code>=3642 && code<=3646) 4668 { 4669 return "NAI"; 4670 break; 4671 } 4672 if(code>=3647 && code<=3649) 4673 { 4674 return "NAN"; 4675 break; 4676 } 4677 if(code==3650) 4678 { 4679 return "NANG"; 4680 break; 4681 } 4682 if(code>=3651 && code<=3655) 4683 { 4684 return "NAO"; 4685 break; 4686 } 4687 if(code==3656) 4688 { 4689 return "NE"; 4690 break; 4691 } 4692 if(code>=3657 && code<=3658) 4693 { 4694 return "NEI"; 4695 break; 4696 } 4697 if(code==3659) 4698 { 4699 return "NEN"; 4700 break; 4701 } 4702 if(code==3660) 4703 { 4704 return "NENG"; 4705 break; 4706 } 4707 if(code>=3661 && code<=3671) 4708 { 4709 return "NI"; 4710 break; 4711 } 4712 if(code>=3672 && code<=3678) 4713 { 4714 return "NIAN"; 4715 break; 4716 } 4717 if(code>=3679 && code<=3680) 4718 { 4719 return "NIANG"; 4720 break; 4721 } 4722 if(code>=3681 && code<=3682) 4723 { 4724 return "NIAO"; 4725 break; 4726 } 4727 if(code>=3683 && code<=3689) 4728 { 4729 return "NIE"; 4730 break; 4731 } 4732 if(code==3690) 4733 { 4734 return "NIN"; 4735 break; 4736 } 4737 if(code>=3691 && code<=3702) 4738 { 4739 return "NING"; 4740 break; 4741 } 4742 if(code>=3703 && code<=3706) 4743 { 4744 return "NIU"; 4745 break; 4746 } 4747 if(code>=3707 && code<=3710) 4748 { 4749 return "NONG"; 4750 break; 4751 } 4752 if(code>=3711 && code<=3714) 4753 { 4754 return "NU"; 4755 break; 4756 } 4757 if(code==3715) 4758 { 4759 return "NUAN"; 4760 break; 4761 } 4762 if(code>=3716 && code<=3717) 4763 { 4764 return "NUE"; 4765 break; 4766 } 4767 if(code>=3718 && code<=3721) 4768 { 4769 return "NUO"; 4770 break; 4771 } 4772 if(code==3722) 4773 { 4774 return "O"; 4775 break; 4776 } 4777 if(code>=3723 && code<=3729) 4778 { 4779 return "OU"; 4780 break; 4781 } 4782 if(code>=3730 && code<=3735) 4783 { 4784 return "PA"; 4785 break; 4786 } 4787 if(code>=3736 && code<=3741) 4788 { 4789 return "PAI"; 4790 break; 4791 } 4792 if(code>=3742 && code<=3749) 4793 { 4794 return "PAN"; 4795 break; 4796 } 4797 if(code>=3750 && code<=3754) 4798 { 4799 return "PANG"; 4800 break; 4801 } 4802 if(code>=3755 && code<=3761) 4803 { 4804 return "PAO"; 4805 break; 4806 } 4807 if(code>=3762 && code<=3770) 4808 { 4809 return "PEI"; 4810 break; 4811 } 4812 if(code>=3771 && code<=3772) 4813 { 4814 return "PEN"; 4815 break; 4816 } 4817 if(code>=3773 && code<=3786) 4818 { 4819 return "PENG"; 4820 break; 4821 } 4822 if(code>=3787 && code<=3809) 4823 { 4824 return "PI"; 4825 break; 4826 } 4827 if(code>=3810 && code<=3813) 4828 { 4829 return "PIAN"; 4830 break; 4831 } 4832 if(code>=3814 && code<=3817) 4833 { 4834 return "PIAO"; 4835 break; 4836 } 4837 if(code>=3818 && code<=3819) 4838 { 4839 return "PIE"; 4840 break; 4841 } 4842 if(code>=3820 && code<=3824) 4843 { 4844 return "PIN"; 4845 break; 4846 } 4847 if(code>=3825 && code<=3833) 4848 { 4849 return "PING"; 4850 break; 4851 } 4852 if(code>=3834 && code<=3841) 4853 { 4854 return "PO"; 4855 break; 4856 } 4857 if(code==3842) 4858 { 4859 return "POU"; 4860 break; 4861 } 4862 if(code>=3843 && code<=3857) 4863 { 4864 return "PU"; 4865 break; 4866 } 4867 if(code>=3858 && code<=3893) 4868 { 4869 return "QI"; 4870 break; 4871 } 4872 if(code==3894 || (code>=3901 && code<=3902)) 4873 { 4874 return "QIA"; 4875 break; 4876 } 4877 if(code>=3903 && code<=3924) 4878 { 4879 return "QIAN"; 4880 break; 4881 } 4882 if(code>=3925 && code<=3932) 4883 { 4884 return "QIANG"; 4885 break; 4886 } 4887 if(code>=3933 && code<=3947) 4888 { 4889 return "QIAO"; 4890 break; 4891 } 4892 if(code>=3948 && code<=3952) 4893 { 4894 return "QIE"; 4895 break; 4896 } 4897 if(code>=3953 && code<=3963) 4898 { 4899 return "QIN"; 4900 break; 4901 } 4902 if(code>=3964 && code<=3976) 4903 { 4904 return "QING"; 4905 break; 4906 } 4907 if(code>=3977 && code<=3978) 4908 { 4909 return "QIONG"; 4910 break; 4911 } 4912 if(code>=3979 && code<=3986) 4913 { 4914 return "QIU"; 4915 break; 4916 } 4917 if(code>=3987 && code<=4005) 4918 { 4919 return "QU"; 4920 break; 4921 } 4922 if(code>=4006 && code<=4016) 4923 { 4924 return "QUAN"; 4925 break; 4926 } 4927 if(code>=4017 && code<=4024) 4928 { 4929 return "QUE"; 4930 break; 4931 } 4932 if(code>=4025 && code<=4026) 4933 { 4934 return "QUN"; 4935 break; 4936 } 4937 if(code>=4027 && code<=4030) 4938 { 4939 return "RAN"; 4940 break; 4941 } 4942 if(code>=4031 && code<=4035) 4943 { 4944 return "RANG"; 4945 } 4946 if(code>=4036 && code<=4038) 4947 { 4948 return "RAO"; 4949 break; 4950 } 4951 if(code>=4039 && code<=4040) 4952 { 4953 return "RE"; 4954 break; 4955 } 4956 if(code>=4041 && code<=4050) 4957 { 4958 return "REN"; 4959 break; 4960 } 4961 if(code>=4051 && code<=4052) 4962 { 4963 return "RENG"; 4964 break; 4965 } 4966 if(code==4053) 4967 { 4968 return "RI"; 4969 break; 4970 } 4971 if(code>=4054 && code<=4063) 4972 { 4973 return "RONG"; 4974 break; 4975 } 4976 if(code>=4064 && code<=4066) 4977 { 4978 return "ROU"; 4979 break; 4980 } 4981 if(code>=4067 && code<=4076) 4982 { 4983 return "RU"; 4984 break; 4985 } 4986 if(code>=4077 && code<=4078) 4987 { 4988 return "RUAN"; 4989 break; 4990 } 4991 if(code>=4079 && code<=4081) 4992 { 4993 return "RUI"; 4994 break; 4995 } 4996 if(code>=4082 && code<=4083) 4997 { 4998 return "RUN"; 4999 break; 5000 } 5001 if(code>=4084 && code<=4085) 5002 { 5003 return "RUO"; 5004 break; 5005 } 5006 if(code>=4086 && code<=4088) 5007 { 5008 return "SA"; 5009 break; 5010 } 5011 if(code>=4089 && code<=4092) 5012 { 5013 return "SAI"; 5014 break; 5015 } 5016 if(code>=4093 && code<=4094) 5017 { 5018 return "SAN"; 5019 break; 5020 } 5021 if(code>=4101 && code<=4102) 5022 { 5023 return "SAN"; 5024 break; 5025 } 5026 if(code>=4103 && code<=4105) 5027 { 5028 return "SANG"; 5029 break; 5030 } 5031 if(code>=4106 && code<=4109) 5032 { 5033 return "SAO"; 5034 break; 5035 } 5036 if(code>=4110 && code<=4112) 5037 { 5038 return "SE"; 5039 break; 5040 } 5041 if(code==4113) 5042 { 5043 return "SEN"; 5044 } 5045 if(code==4114) 5046 { 5047 return "SENG"; 5048 break; 5049 } 5050 if(code>=4115 && code<=4123) 5051 { 5052 return "SHA"; 5053 break; 5054 } 5055 if(code>=4124 && code<=4125) 5056 { 5057 return "SHAI"; 5058 break; 5059 } 5060 if(code>=4126 && code<=4141) 5061 { 5062 return "SHAN"; 5063 break; 5064 } 5065 if(code>=4142 && code<=4149) 5066 { 5067 return "SHANG"; 5068 break; 5069 } 5070 if(code>=4150 && code<=4160) 5071 { 5072 return "SHAO"; 5073 break; 5074 } 5075 if(code>=4161 && code<=4172) 5076 { 5077 return "SHE"; 5078 break; 5079 } 5080 if(code>=4173 && code<=4188) 5081 { 5082 return "SHEN"; 5083 break; 5084 } 5085 if(code>=4189 && code<=4205) 5086 { 5087 return "SHENG"; 5088 break; 5089 } 5090 if(code>=4206 && code<=4252) 5091 { 5092 return "SHI"; 5093 break; 5094 } 5095 if(code>=4253 && code<=4262) 5096 { 5097 return "SHOU"; 5098 break; 5099 } 5100 if(code>=4263 && code<=4301) 5101 { 5102 return "SHU"; 5103 break; 5104 } 5105 if(code>=4302 && code<=4303) 5106 { 5107 return "SHUA"; 5108 break; 5109 } 5110 if(code>=4304 && code<=4307) 5111 { 5112 return "SHUAI"; 5113 break; 5114 } 5115 if(code>=4308 && code<=4309) 5116 { 5117 return "SHUAN"; 5118 break; 5119 } 5120 if(code>=4310 && code<=4312) 5121 { 5122 return "SHUANG"; 5123 break; 5124 } 5125 if(code>=4313 && code<=4316) 5126 { 5127 return "SHUI"; 5128 break; 5129 } 5130 if(code>=4317 && code<=4320) 5131 { 5132 return "SHUN"; 5133 break; 5134 } 5135 if(code>=4321 && code<=4324) 5136 { 5137 return "SHUO"; 5138 break; 5139 } 5140 if(code>=4325 && code<=4340) 5141 { 5142 return "SI"; 5143 break; 5144 } 5145 if(code>=4341 && code<=4348) 5146 { 5147 return "SONG"; 5148 break; 5149 } 5150 if(code>=4349 && code<=4352) 5151 { 5152 return "SOU"; 5153 break; 5154 } 5155 if(code>=4353 && code<=4364) 5156 { 5157 return "SU"; 5158 break; 5159 } 5160 if(code>=4365 && code<=4367) 5161 { 5162 return "SUAN"; 5163 break; 5164 } 5165 if(code>=4368 && code<=4378) 5166 { 5167 return "SUI"; 5168 break; 5169 } 5170 if(code>=4379 && code<=4381) 5171 { 5172 return "SUN"; 5173 break; 5174 } 5175 if(code>=4382 && code<=4389) 5176 { 5177 return "SUO"; 5178 break; 5179 } 5180 if(code>=4390 && code<=4404) 5181 { 5182 return "TA"; 5183 break; 5184 } 5185 if(code>=4405 && code<=4413) 5186 { 5187 return "TAI"; 5188 break; 5189 } 5190 if(code>=4414 && code<=4431) 5191 { 5192 return "TAN"; 5193 break; 5194 } 5195 if(code>=4432 && code<=4444) 5196 { 5197 return "TANG"; 5198 break; 5199 } 5200 if(code>=4445 && code<=4455) 5201 { 5202 return "TAO"; 5203 break; 5204 } 5205 if(code==4456) 5206 { 5207 return "TE"; 5208 break; 5209 } 5210 if(code>=4457 && code<=4460) 5211 { 5212 return "TENG"; 5213 break; 5214 } 5215 if(code>=4461 && code<=4475) 5216 { 5217 return "TI"; 5218 break; 5219 } 5220 if(code>=4476 && code<=4483) 5221 { 5222 return "TIAN"; 5223 break; 5224 } 5225 if(code>=4484 && code<=4488) 5226 { 5227 return "TIAO"; 5228 break; 5229 } 5230 if(code>=4489 && code<=4491) 5231 { 5232 return "TIE"; 5233 break; 5234 } 5235 if(code>=4492 && code<=4507) 5236 { 5237 return "TING"; 5238 break; 5239 } 5240 if(code>=4508 && code<=4520) 5241 { 5242 return "TONG"; 5243 break; 5244 } 5245 if(code>=4521 && code<=4524) 5246 { 5247 return "TOU"; 5248 break; 5249 } 5250 if(code>=4525 && code<=4535) 5251 { 5252 return "TU"; 5253 break; 5254 } 5255 if(code>=4536 && code<=4537) 5256 { 5257 return "TUAN"; 5258 break; 5259 } 5260 if(code>=4538 && code<=4543) 5261 { 5262 return "TUI"; 5263 break; 5264 } 5265 if(code>=4544 && code<=4546) 5266 { 5267 return "TUN"; 5268 break; 5269 } 5270 if(code>=4547 && code<=4557) 5271 { 5272 return "TUO"; 5273 break; 5274 } 5275 if(code>=4558 && code<=4564) 5276 { 5277 return "WA"; 5278 break; 5279 } 5280 if(code>=4565 && code<=4566) 5281 { 5282 return "WAI"; 5283 break; 5284 } 5285 if(code>=4567 && code<=4583) 5286 { 5287 return "WAN"; 5288 break; 5289 } 5290 if(code>=4584 && code<=4593) 5291 { 5292 return "WANG"; 5293 break; 5294 } 5295 if(code>=4594 && code<=4632) 5296 { 5297 return "WEI"; 5298 break; 5299 } 5300 if(code>=4633 && code<=4642) 5301 { 5302 return "WEN"; 5303 break; 5304 } 5305 if(code>=4643 && code<=4645) 5306 { 5307 return "WENG"; 5308 break; 5309 } 5310 if(code>=4646 && code<=4654) 5311 { 5312 return "WO"; 5313 break; 5314 } 5315 if(code>=4655 && code<=4683) 5316 { 5317 return "WU"; 5318 break; 5319 } 5320 if(code>=4684 && code<=4724) 5321 { 5322 return "XI"; 5323 break; 5324 } 5325 if(code>=4725 && code<=4737) 5326 { 5327 return "XIA"; 5328 break; 5329 } 5330 if(code>=4738 && code<=4763) 5331 { 5332 return "XIAN"; 5333 break; 5334 } 5335 if(code>=4764 && code<=4783) 5336 { 5337 return "XIANG"; 5338 break; 5339 } 5340 if(code>=4784 && code<=4807) 5341 { 5342 return "XIAO"; 5343 break; 5344 } 5345 if(code>=4809 && code<=4828) 5346 { 5347 return "XIE"; 5348 break; 5349 } 5350 if(code>=4829 && code<=4838) 5351 { 5352 return "XIN"; 5353 break; 5354 } 5355 if(code>=4839 && code<=4853) 5356 { 5357 return "XING"; 5358 break; 5359 } 5360 if(code>=4854 && code<=4860) 5361 { 5362 return "XIONG"; 5363 break; 5364 } 5365 if(code>=4861 && code<=4869) 5366 { 5367 return "XIU"; 5368 break; 5369 } 5370 if(code>=4870 && code<=4888) 5371 { 5372 return "XU"; 5373 break; 5374 } 5375 if(code>=4889 && code<=4904) 5376 { 5377 return "XUAN"; 5378 break; 5379 } 5380 if(code>=4905 && code<=4910) 5381 { 5382 return "XUE"; 5383 break; 5384 } 5385 if(code>=4911 && code<=4924) 5386 { 5387 return "XUN"; 5388 break; 5389 } 5390 if(code>=4925 && code<=4940) 5391 { 5392 return "YA"; 5393 break; 5394 } 5395 if(code>=4941 && code<=4973) 5396 { 5397 return "YAN"; 5398 break; 5399 } 5400 if(code>=4974 && code<=4990) 5401 { 5402 return "YANG"; 5403 break; 5404 } 5405 if(code>=4991 && code<=5011) 5406 { 5407 return "YAO"; 5408 break; 5409 } 5410 if(code>=5012 && code<=5026) 5411 { 5412 return "YE"; 5413 break; 5414 } 5415 if(code>=5027 && code<=5079) 5416 { 5417 return "YI"; 5418 break; 5419 } 5420 if(code>=5080 && code<=5101) 5421 { 5422 return "YIN"; 5423 break; 5424 } 5425 if(code>=5102 && code<=5119) 5426 { 5427 return "YING"; 5428 break; 5429 } 5430 if(code==5120) 5431 { 5432 return "YO"; 5433 break; 5434 } 5435 if(code>=5121 && code<=5135) 5436 { 5437 return "YONG"; 5438 break; 5439 } 5440 if(code>=5136 && code<=5155) 5441 { 5442 return "YOU"; 5443 break; 5444 } 5445 if(code>=5156 && code<=5206) 5446 { 5447 return "YU"; 5448 break; 5449 } 5450 if(code>=5207 && code<=5226) 5451 { 5452 return "YUAN"; 5453 break; 5454 } 5455 if(code>=5227 && code<=5236) 5456 { 5457 return "YUE"; 5458 break; 5459 } 5460 if(code>=5237 && code<=5248) 5461 { 5462 return "YUN"; 5463 break; 5464 } 5465 if(code>=5249 && code<=5251) 5466 { 5467 return "ZA"; 5468 break; 5469 } 5470 if(code>=5252 && code<=5258) 5471 { 5472 return "ZAI"; 5473 break; 5474 } 5475 if(code>=5259 && code<=5262) 5476 { 5477 return "ZAN"; 5478 break; 5479 } 5480 if(code>=5263 && code<=5265) 5481 { 5482 return "ZANG"; 5483 break; 5484 } 5485 if(code>=5266 && code<=5279) 5486 { 5487 return "ZAO"; 5488 break; 5489 } 5490 if(code>=5280 && code<=5283) 5491 { 5492 return "ZE"; 5493 break; 5494 } 5495 if(code==5284) 5496 { 5497 return "ZEI"; 5498 break; 5499 } 5500 if(code==5285) 5501 { 5502 return "ZEN"; 5503 break; 5504 } 5505 if(code>=5286 && code<=5289) 5506 { 5507 return "ZENG"; 5508 break; 5509 } 5510 if(code>=5290 && code<=5309) 5511 { 5512 return "ZHA"; 5513 break; 5514 } 5515 if(code>=5310 && code<=5315) 5516 { 5517 return "ZHAI"; 5518 break; 5519 } 5520 if(code>=5316 && code<=5332) 5521 { 5522 return "ZHAN"; 5523 break; 5524 } 5525 if(code>=5333 && code<=5347) 5526 { 5527 return "ZHANG"; 5528 break; 5529 } 5530 if(code>=5348 && code<=5357) 5531 { 5532 return "ZHAO"; 5533 break; 5534 } 5535 if(code>=5358 && code<=5367) 5536 { 5537 return "ZHE"; 5538 break; 5539 } 5540 if(code>=5368 && code<=5383) 5541 { 5542 return "ZHEN"; 5543 break; 5544 } 5545 if(code>=5384 && code<=5404) 5546 { 5547 return "ZHENG"; 5548 break; 5549 } 5550 if(code>=5405 && code<=5447) 5551 { 5552 return "ZHI"; 5553 break; 5554 } 5555 if(code>=5448 && code<=5458) 5556 { 5557 return "ZHONG"; 5558 break; 5559 } 5560 if(code>=5459 && code<=5472) 5561 { 5562 return "ZHOU"; 5563 break; 5564 } 5565 if(code>=5473 && code<=5504) 5566 { 5567 return "ZHU"; 5568 break; 5569 } 5570 if(code>=5505 && code<=5506) 5571 { 5572 return "ZHUA"; 5573 break; 5574 } 5575 if(code==5507) 5576 { 5577 return "ZHUAI"; 5578 break; 5579 } 5580 if(code>=5508 && code<=5513) 5581 { 5582 return "ZHUAN"; 5583 break; 5584 } 5585 if(code>=5514 && code<=5520) 5586 { 5587 return "ZHUANG"; 5588 break; 5589 } 5590 if(code>=5521 && code<=5526) 5591 { 5592 return "ZHUI"; 5593 break; 5594 } 5595 if(code>=5527 && code<=5528) 5596 { 5597 return "ZHUN"; 5598 break; 5599 } 5600 if(code>=5529 && code<=5539) 5601 { 5602 return "ZHUO"; 5603 break; 5604 } 5605 if(code>=5540 && code<=5554) 5606 { 5607 return "ZI"; 5608 break; 5609 } 5610 if(code>=5555 && code<=5561) 5611 { 5612 return "ZONG"; 5613 break; 5614 } 5615 if(code>=5562 && code<=5565) 5616 { 5617 return "ZOU"; 5618 break; 5619 } 5620 if(code>=5566 && code<=5573) 5621 { 5622 return "ZU"; 5623 break; 5624 } 5625 if(code>=5574 && code<=5575) 5626 { 5627 return "ZUAN"; 5628 break; 5629 } 5630 if(code>=5576 && code<=5579) 5631 { 5632 return "ZUI"; 5633 break; 5634 } 5635 if(code>=5580 && code<=5581) 5636 { 5637 return "ZUN"; 5638 break; 5639 } 5640 if(code>=5582 && code<=5589) 5641 { 5642 return "ZUO"; 5643 break; 5644 } 5645 } 5646 return "?"; 5647 }
【出处】:https://www.cnblogs.com/tangxin-blog/p/5541635.html
=======================================================================================
以下内容出自文章的评论区
编译成Dll库
extern "C" _declspec(dllexport)void h2p(const char* szChinese) { uint32_t bufLen = 0; char pinyinBuf[MAXBUFLEN] = { 0 }; //const char* szChinese = "中华人民共和国 People's Republic of China"; getPinyin(szChinese, pinyinBuf, MAXBUFLEN, &bufLen, enmPinyinMode_FirstUpper); printf("%s\n", pinyinBuf); } $code=@" using System; using System.Runtime.InteropServices; public static class Api{ [DllImport("C:/Users/Administrator/source/repos/test/x64/Release/test.dll")] public static extern int h2p(String ss); } "@ Add-Type -TypeDefinition $code [Api]::h2p("我是中国人")
使用powershell调用
cls $code=@" using System; using System.Runtime.InteropServices; public static class Api{ [DllImport("pinyin.dll")] public static extern void getPinyin(byte[] src,byte[] buf,uint max_len,ref uint buf_len,uint mode); } "@ Add-Type -TypeDefinition $code $s = "中华人民共和国 People's Republic of China" $src=[System.Text.Encoding]::Default.GetBytes($s) $buf = New-Object 'byte[]'(1024) $len = 0 [Api]::getPinyin($src,$buf,1024,[ref]$len,2) [System.Text.Encoding]::Default.GetString($buf,0,$len)
关注我】。(●'◡'●)
如果,您希望更容易地发现我的新博客,不妨点击一下绿色通道的【因为,我的写作热情也离不开您的肯定与支持,感谢您的阅读,我是【Jack_孟】!
本文来自博客园,作者:jack_Meng,转载请注明原文链接:https://www.cnblogs.com/mq0036/p/17947161
【免责声明】本文来自源于网络,如涉及版权或侵权问题,请及时联系我们,我们将第一时间删除或更改!