您的位置:首页 > 其它

2014届华为成都校园招聘机试题

2013-09-14 15:19 295 查看
转载请注明:/article/9132145.html

本文试题权利华为公司所有,若侵犯权利,请通知,本人立即删除!

1. 输入正整数,把其中的‘0’~‘9’转换为a~j;(不用检测异常输入,保证输入无异常)

例如:输入:123

输出:bcd

2.假设n人,编号为:1,2,3,。。。n;循环报数,每次报数为m的出列,求最后出列的人的编号;异常返回-1;

例如,输入:10,10

输出:8

3;球输入表达式的值,*和/的优先级大于+和-;

例如,输入:2+3-5*13;

输出:-60

本人作对了两题,第三题提交了,但是答案错误,没有得到分,这是因为时间太紧,没有时间来得及调试!

第一题:

#include<iostream>

#include<string>

using namespace std;

int main()

{

string str;

cin>>str;

char* p = new char[str.size()+1];

for(int i=0;i<str.size();i++)

{

p[i] = str[i]-'0' + 'a';

}

p[str.size()] = '\0';

cout<<p<<endl;

delete[] p;

}

第二题:

#include<cstdio>

int main()

{

int n,m;

scanf("%d,%d",&n,&m);

if(n<=0||m<=0)

{

return -1;

}

int last=1;

for(int i=2;i<=n;i++)

{

last = (last+m)%i;

if(last==0)

last=i;

}

printf("%d",last);

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: