华为校招历年机试题目

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

华为历年笔试题目总结

因最近要参加华为的招聘,便从网上搜集了一些华为笔试历年题目,现总结献给大家,因本人非软件出生,水平有限,仅供参考,若有误处,请海涵。

1、字符串问题

∙问题描述:

把一个字符串中的除大写字母、小写字母和数字字符之外的其他字符都去掉,输出新字符串。

∙要求实现函数:

void my_string(char* input, char* output)

【输入】char* input,输入的字符串

【输出】char* output,输出的字符串

【返回】无

∙示例

输入:inp ut = “A*(BC&De+_fg/*”

输出:output = “ABCDefg”

输入:input = “aB+_9”

输出:output = “aB9”

程序如下:

void my_string(char* input, char* output)

{

int i,j;

i=j=0;

while(*(input+i)!='\0')

{

if((*(input+i)>='A'&&*(input+i)<='Z')||

(*(input+i)>='a'&&*(input+i)<='z')||(*(input+i)>='0'&&*(input+i)<='9'))

{

*(output+j)=*(input+i);

j++;

}

i++;

}

*(output+j+1)='\0';

}

题目描述:

输入一个字符串,将其中大写字母转换为对应小写字母之后的第五个字母,

若原始大写字母为V~Z, 则转换为对应小写字母的值减21。

其他字符不变,输出转换后的字符串。

例如,对于字母A,则转换为小写字母f;若形参是字母W,则转换为小写字母b

要求实现函数:

void TransferString(const char * pInputStr, long lInputLen, char * pOutputStr);

【输入】pInputStr:输入字符串

lInputLen:输入字符串长度

【输出】pOutputStr:输出字符串,空间已经开辟好,与输入字符串等长;

【注意】只需要完成该函数功能算法,中间不需要有任何IO的输入输出

示例

输入:“Axs3mWss”

输出:“fxs3mbss”

void TransferString(const char * pInputStr, long lInputLen, char * pOutputStr)

{

int i=0;

for(i=0;i

{

if(pInputStr[i]>='A'&&pInputStr[i]<'V')

pOutputStr[i]=pInputStr[i]+'a'-'A'+5;

else if(pInputStr[i]>='V'&&pInputStr[i]<='Z')

pOutputStr[i]=pInputStr[i]+'a'-'A'-21;

else

pOutputStr[i]=pInputStr[i];

}

}

3. 单词统计

题目描述:

输入一段英文文本,用程序统计出现频率最高和最低的两个单词;

英文文本中仅出现这四类字符:空格( )、英文逗号(,)、英文句号(.)、英文大小写字母(a-z、A-Z)

单词之间的分隔符仅考虑这三种:空格( )、英文逗号(,)、英文句号(.);

仅大小写不同的单词算同一个单词;

如果两个单词出现次数相同,则在文本中首次出现的单词优先返回。

返回的单词统一用小写字母返回

例如:

输入字符串“Hello world, i said hello world to the world”,返回“world”,“i”

输入字符串“Somebody like somebody,i do not like it”,返回“somebody”,“i”

要求实现函数:

void WordStat(const char * pInputStr, char * pOutputHotWord, char * pOutputColdWord);

【输入】pInputStr:输入字符串,指向一段英文文本

【输出】pOutputHotWord:输出字符串,返回出现次数最多的单词,该指针所指存储空间已经分配好,且足够大

pOutputColdWord:输出字符串,返回出现次数最少的单词,该指针所指存储空间已经分配好,且足够大

【注意】只需要完成该函数功能算法,中间不需要有任何IO的输入输出

示例

输入:“Hello world, i said hello world to the world”

void WordStat(const char * pInputStr, char * pOutputHotWord, char * pOutputColdWord)

{

//分割输入字符串Hello world, i said hello world to the world

struct eng_t chaifen[20];

int i=0,j=0,k=0;

while (pInputStr[i]!='\0')

{

相关文档
最新文档