华为2012校园招聘软件上机笔试题+准确答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2012华为校园招聘上机试题+准确答案
1.给定一个字符串,把字符串内的字母转换成该字母的下一个字母,a换成b,z换成a,
Z换成A,如aBf转换成bCg,字符串内的其他字符不改变,给定函数,编写函数void Stringchang(const char*inpu,char*output)
其中input是输入字符串,output是输出字符串
答案:
void Stringchang (char *input,char *output)
{ int len=strlen(input);
for(int i=0;i { if((input[i]<='Z'&&input[i]>='A')||(input[i]<='z'&&input[i]>='a')) output[i]=input[i]+1; else output[i]=input[i]; } } 2.求一个整型数字中有没有相同的部分,例如12389756123这个整型数字中相同的部分是 123,相同的部分至少应该是2位数,如果有相同部分返回1,如果没有则返回0。方法是先将整型数字转换到数组中,再判断。 函数为int same(int num) 其中num是输入的整型数字 答案:参考第三题很容易写出代码! 3.求两个字符串的乘积,结果存到字符串中,例如字符串一中存的“657891”,字符串二 中存的“521”,分别将字符串中的字符转换成整型数字,进行计算后,再转换成字符类型存储起来 函数为void mul(char *input1,int n,char *input2, int m,char *output) 其中input1和input2是输入,n是input1的长度,n2是input2的长度。Output是输出答案: void mul(char *input1,int n,char *input2, int m,char *output) { int num1=StrToNum(input1,n); int num2=StrToNum(input2,m); int muti=num1*num2; NumToStr(muti,output); cout<