拼音转数字

来源:互联网 发布:linux内核笔试题 编辑:程序博客网 时间:2024/04/25 21:57

题目描述:

输入是一个只包含拼音的字符串,请输出对应的数字序列。

转换关系如下:

拼音                 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;}


0 0
原创粉丝点击