华为笔试题 及 答案

华为笔试题 及 答案

ID:39428658

大小:27.50 KB

页数:5页

时间:2019-07-03

华为笔试题 及 答案_第1页
华为笔试题 及 答案_第2页
华为笔试题 及 答案_第3页
华为笔试题 及 答案_第4页
华为笔试题 及 答案_第5页
资源描述:

《华为笔试题 及 答案》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、真正的华为笔试题及我的解答今天华为打电话说要给我Offer了,怎么报答他的Offer呢,嗯,做套真正的华为笔试题吧。特意提到是真正的华为笔试题,是因为前面我做的号称华为笔试题其实是别人公司的(前面的帖子有解释),下面的内容地球人都说是华为的,难道还不是它的么。哈哈。  这些题目相比其他公司的试题,较为基础,全部为C语言,没有涉及C++,但如果不细心,是很难得到较高分数的。另外大家转贴不要去掉我的个人信息啊。互相宣传下网站嘛。1.找错voidtest1(){charstring[10];char*str1="0123456789";strcpy(string,str1);}答

2、:表面上并且编译都不会错误。但如果string数组原意表示的是字符串的话,那这个赋值就没有达到意图。最好定义为charstring[11],这样最后一个元素可以存储字符串结尾符'';voidtest2(){charstring[10],str1[10];for(intI=0;I<10;I++){str1[I]='a';}strcpy(string,str1);}答:strcpy使用错误,strcpy只有遇到字符串末尾的''才会结束,而str1并没有结尾标志,导致strcpy函数越界访问,不妨让str1[9]='',这样就正常了。voidtest3(char*st

3、r1){charstring[10];if(strlen(str1)<=10){strcpy(string,str1);}}答:这又会出现第一道改错题的错误了。strlen(str1)算出来的值是不包含结尾符''的,如果str1刚好为10个字符+1结尾符,string就得不到结尾符了。可将strlen(str1)<=10改为strlen(str1)<10。2.找错#defineMAX_SRM256DSNget_SRM_no(){staticintSRM_no;intI;for(I=0;I{SRM_no%=MAX_SRM;if(MY_SRM.state==IDLE){br

4、eak;}}if(I>=MAX_SRM)return(NULL_SRM);elsereturnSRM_no;}答:我不知道这段代码的具体功能,但明显有两个错误1,SRM_no没有赋初值2,由于static的声明,使该函数成为不可重入(即不可预测结果)函数,因为SRM_no变量放在程序的全局存储区中,每次调用的时候还可以保持原来的赋值。这里应该去掉static声明。3.写出程序运行结果intsum(inta){autointc=0;staticintb=3;c+=1;b+=2;return(a+b+c);}voidmain(){intI;inta=2;for(I=0;I<5;

5、I++){printf("%d,",sum(a));}}答:8,10,12,14,16该题比较简单。只要注意b声明为static静态全局变量,其值在下次调用时是可以保持住原来的赋值的就可以。4.intfunc(inta){intb;switch(a){case1:b=30;case2:b=20;case3:b=16;default:b=0;}returnb;}则func(1)=?答:func(1)=0,因为没有break语句,switch中会一直计算到b=0。这是提醒我们不要忘了break。呵呵。5:inta[3];a[0]=0;a[1]=1;a[2]=2;int*p,*q

6、;p=a;q=&a[2];则a[q-p]=?答:a[q-p]=a[2]=2;这题是要告诉我们指针的运算特点6.定义int**a[3][4],则变量占有的内存空间为:_____答:此处定义的是指向指针的指针数组,对于32位系统,指针占内存空间4字节,因此总空间为3×4×4=48。7.编写一个函数,要求输入年月日时分秒,输出该年月日时分秒的下一秒。如输入2004年12月31日23时59分59秒,则输出2005年1月1日0时0分0秒。答:/*输入年月日时分秒,输出年月日时分秒的下一秒,输出仍然在原内存空间*/voidNextMinute(int*nYear,int*nMonth,

7、int*nDate,int*nHour,int*nMinute,int*nSecond){intnDays;(*nSecond)++;//秒加1if(*nSecond>=60)//秒满60,做出特殊处理,下面时,日,月等类同{*nSecond=0;(*nMinute)++;if(*nMinute>=60){*nMinute=0;(*nHour)++;if(*nHour>=24){*nHour=0;(*nDate)++;switch(*nMonth){case1:case3:case5:case7:case8:cas

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。