华为程序员面试笔试试卷_第1页
华为程序员面试笔试试卷_第2页
华为程序员面试笔试试卷_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

华为程序员面试笔试试卷

一、推断题(对的写T,错的写F并说明缘由,每题4分,共20分)

1、有数组定义inta[2][2]={{1},{2,3}};则a[0][1]的值为0。(正确)

2、int(*ptr)(),则ptr是一维数组的名字。(错误int(*ptr)();定义一个指向函数的指针变量)

3、指针在任何状况下都可进展,,=,=,==运算。(错误)

4、switch(c)语句中c可以是int,long,char,float,unsignedint类型。(错,不能用实形)

二、填空题(共30分)

1、在windows下,写出运行结果,每空2分,共10分。charstr[]=Hello;char*p=str;intn=10;sizeof(str)=()sizeof(p)=()sizeof(n)=()voidfunc(charstr[100]){}sizeof(str)=()答案:6,4,4,4,详细解释请参看我的空间里的“C/C++程序员应聘试题剖析”

2、voidgetmemory(char**p,intnum){*p=(char*)malloc(num);}voidtest(void){char*str=NULL;getmemory(str,100);strcpy(str,hello);printf(str);}运行test函数有什么结果?()10分答案:输出hello,但是发生内存泄漏。

3、设intarr[]={6,7,8,9,10};int*ptr=arr;*(ptr++)+=123;printf(%d,%d,*ptr,*(++ptr));()10分答案:8,

8。这道题目的”意义不大,由于在不同的编译器里printf的参数的方向是不一样的,在vc6.0下是从有到左,这里先*(++ptr)后*pt,于是结果为8,8

三、编程题(第一小题20,其次小题30分)

1、不使用库函数,编写函数intstrcmp(char*source,char*dest)相等返回0,不等返回-1;

答案:一、intstrcmp(char*source,char*dest){assert((source!=NULL)(dest!=NULL));inti,j;for(i=0;source[i]==dest[i];i++){if(source[i]==dest[i]==)return0;elsereturn-1;}}答案:二、intstrcmp(char*source,char*dest){while((*source!=)(*source==*dest)){source++;dest++;}return((*source)-(*dest))?-1:0;}

2、写一函数intfun(char*p)推断一字符串是否为回文,是返回1,不是返回0,出错返回-1答案:一、intfun(char*p){if(p==NULL)return-1;else{intlength=0;i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论