2016.3.18华为上机题:拼音转数字
来源:互联网 发布:程序员演讲稿 编辑:程序博客网 时间:2024/04/19 10:17
这是第三题。。。
第二题为2015年的题目:洞穴逃生,参考本人博客列表。。
输入是一个只包含拼音的字符串,请输出对应的数字序列。转换关系如下:
描述:
拼音
yi er san si wu liu qi ba jiu
阿拉伯数字
1 2 3 4 5 6 7 8 9
输入字符只包含小写字母,所有字符都可以正好匹配
运行时间限制:无限制
内存限制: 无限制
输入: 一行字符串,长度小于1000
输出: 一行字符(数字)串
样例输入: yiersansi
样例输出: 1234
using namespace std;
char * pinyinTonum(char* a,char *p)
{
int i=0,j=0;
char temp='\0';
while(*(a+i)!='\0')
{
switch(*(a+i))
{
case 'y':
temp='1';
i += 2;
break;
case 'e':
temp='2';
i += 2;
break;
case 's':
if(*(a+i+1) == 'a')
{
temp='3';
i += 3;
break;
}
else if(*(a+i+1)== 'i')
{
temp='4';
i += 2;
break;
}
case 'w':
temp='5';
i += 2;
break;
case 'l':
temp='6';
i += 3;
break;
case 'q':
temp='7';
i += 2;
break;
case 'b':
temp='8';
i += 2;
break;
case 'j':
temp='9';
i += 3;
break;
default:
cout<<"error"<<endl;
break;
}
*(p+j)=temp;
j++;
}
*(p+j)='\0';
return p;
}
int main()
{
char a[100];
char *p=a;
cin>>a;
p=pinyinTonum(a,p);
if(*p)
cout<<p<<endl;
return 0;
}
0 0
- 2016.3.18华为上机题:拼音转数字
- 华为机试题之拼音转数字
- 华为机试:中文整数读法的拼音转数字
- A题之拼音转数字
- 拼音转数字
- 拼音转数字
- 拼音转数字
- 【c++】拼音转数字
- 数字拼音转数字
- 华为Java上机题
- 一道华为上机题
- 华为2012上机题
- 华为上机第二题
- 华为上机题
- 一道华为上机题
- 华为上机第二题
- 一道华为上机题
- 华为Java上机题
- FrameLayout中让控件居中
- Jackson /常用注解/ annotation
- 去空格 whitespaceAndNewlineCharacterSet
- 左右滑动指针效果
- 做人底线7句话
- 2016.3.18华为上机题:拼音转数字
- 自定义map(map实现原理)
- R可视化(一)
- windows下Python安装模块方法
- “不允许指针指向不完整的类类型”问题分析
- JPush(极光推送)实战总结
- Ubuntu环境下配置J2EE开发环境jdk+tomcat+mysql+myeclipse
- std::bind
- 数据库事务知识梳理.概念