题目描述:
输入是一个只包含拼音的字符串,请输出对应的数字序列。
转换关系如下:
拼音 yi er san si wu liu qi ba jiu
阿拉伯数字 1 2 3 4 5 6 7 8 9
注意:
输入字符只包含小写字母,所有字符都可以正好匹配。
运行时间限制:无限制
内存限制:无限制
输入:
一行字符串,长度小于1000
输出:
一行字符(数字)串
样例输入:yiersansi
样例输出:1234
代码:
#include <iostream>
using namespace std;
int main()
{
char str[1000];
int i = 0;
char temp = getchar();
while (temp != '\n')
{
str[i] = temp;
switch (str[i])
{
case 'y':
cout << 1;
i += 2;
break;
case 'e':
cout << 2;
i += 2;
break;
case 's':
temp = getchar();
if (temp != '\n')
{
str[++i] = temp;
if (str[i] == 'a')
{
cout << 3;
i += 3;
break;
}
else
{
cout << 4;
i += 2;
break;
}
}
case 'w':
cout << 5;
i += 2;
break;
case 'l':
cout << 6;
i += 3;
break;
case 'q':
cout << 7;
i += 2;
break;
case 'b':
cout << 8;
i += 2;
break;
case 'j':
cout << 9;
i += 3;
break;
}
temp = getchar();
}
cin.get();
return 0;
}