描述
编一个“念数字”的程序,它能让计算机完成以下工作:当你输入一个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
私信
关注