还剩8页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
华为机试题及答案
1、通过键盘输入任意一个字符串序列,字符串可能包含多个子串,子串以空格分隔请编写一个程序,自动分离出各个子串,并使用’’将其分隔,并且在最后也补充一个’’并将子串存储测试输入“abcdefghid”输出“abcdefghid”#includestdio.h#includestring.hvoidDivideStringconstchar*pInputStrlonglInputLenchar*pOutputStr{inti=0j=0;intflag=0;whilepInputStr[i]=={i++;}for;ilInputLen;i++{ifpInputStr[i]=={flag=1;continue;}ifflag==1{flag=0;pOutputStr[j++]=;}pOutputStr[j++]=pInputStr[i];}pOutputStr[j++]=;pOutputStr[j]=\0;}intmain{chartest
[40];charre
[40];getstest;DivideStringteststrlentestre;printf%sre;return0;}
2、将输入的字符串(字符串仅包含小写字母‘a’到‘z’),按照如下规则,循环转换后输出a-bb-c…y-zz-a;若输入的字符串连续出现两个字母相同时,后一个字母需要连续转换2次例如aa转换为bc,zz转换为ab;当连续相同字母超过两个时,第三个出现的字母按第一次出现算测试输入char*input=abbbcd输出char*output=bcdcde#includestdio.h#includestring.hvoidconvertchar*inputchar*output{int...。