【模拟】念数字

描述

编一个“念数字”的程序,它能让计算机完成以下工作:当你输入一个0至99 之
间的数后,计算机就会用汉语拼音印出这个数。
如果输入的数不在0到99 之间,就印出“CUO LE”。
注:为了使不熟悉汉语拼音的同学也能做这个题,把“零,一,二,三,……,九,十”的
拼音法写在下面。
零 LING 一 YI 二 ER 三 SAN 四 SI 五 WU
六 LIU 七 QI 八 BA 九 JIU 十 SHI

输入

输入数据有多组,每组数据占一行,内容为一个数字,数据以EOF作为结束。

输出

输出对应的汉语拼音,字母全部为大写。每组数据占一行

样例输入

35
0
11
100

样例输出

SAN SHI WU
LING
SHI YI
CUO LE

题目来源

TZOJ

分析:
0-99的发音模拟,仔细。
代码:

#include<bits/stdc++.h>
using namespace std;
int main()
{
    string s[11]={"LING","YI","ER","SAN","SI","WU","LIU","QI","BA","JIU","SHI"};
    int n;
    while(cin>>n)
    {
        if (n>=0&&n<10)//[0,10)
        {
            cout<<s[n]<<endl;
        }
        else
        if (n>=10&&n<20)//[10,20)
        {
            if (n==10) cout<<"SHI"<<endl;
            else
            {
                cout<<"SHI "<<s[n%10]<<endl;
            }
        }
        else
        if (n>=20&&n<100)//[20,100)
        {
            cout<<s[n/10]<<' ';//十位数字
            if (n%10==0)
            {
                cout<<"SHI"<<endl;
            }
            else
            {
                cout<<"SHI "<<s[n%10]<<endl;
            }
        }
        else
        cout<<"CUO LE"<<endl;//0-99以外的数字
    }
    return 0;
}

【模拟】念数字【模拟】念数字 Skynamer 发布了103 篇原创文章 · 获赞 0 · 访问量 3664 私信 关注
上一篇:7-25 念数字 (15分)


下一篇:7-30 念数字 (15 分)