XX华为笔试题及答案

XX华为笔试题及答案

ID:45886956

大小:62.39 KB

页数:4页

时间:2019-11-19

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

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

1、XX华为笔试题及答案    想进入华为大家准备好了?下面是华为笔试题为大家提供参考    1.找错voidtest1(){charstring[10];char*str1=0432156789;strcpy(string,str1);}    答:表面上并且编译都不会错误但如果string数组原意表示的是字符串的话那这个赋值就没有达到意图最好定义为charstring[11]这样最后一个元素可以存储字符串结尾符;voidtest2(){charstring[10],str1[10];for(intI=0;I<10;I++){str1[I]=a;}s

2、trcpy(string,str1);}答:strcpy使用错误strcpy只有遇到字符串末尾的才会结束而str1并没有结尾标志导致strcpy函数越界访问不妨让str1[9]=这样就正常了voidtest3(char*str1){charstring[10];if(strlen(str1)<=10){strcpy(string,str1);}}答:这又会出现第一道改错题的错误了strlen(str1)算出来的值是不包含结尾符的如果str1刚好为10个字符+1结尾符string就得不到结尾符了可将strlen(str1)<=10改为strlen(s

3、tr1)<10    2.找错defineMAXSRM256DSNgetSRMno(){staticintSRMno;intI;for(I=0;I=MAXSRM)return(NULLSRM);elsereturnSRMno;}    答:我不知道这段代码的具体功能但明显有两个错误1SRMno没有赋初值2由于static的声明使该函数成为不可重入(即不可预测结果)函数因为SRMno变量放在程序的全局存储区中每次调用的时候还可以保持原来的赋值这里应该去掉static声明    3.写出程序运行结果intsum(inta){autointc=0;sta

4、ticintb=3;c+=1;b+=2;return(a+b+c);}voidmain(){intI;inta=2;for(I=0;I<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)

5、=0因为没有break语句switch中会一直计算到b=0这是提醒我们不要忘了break呵呵    5:inta[3];a[0]=0;a[1]=1;a[2]=2;int*p,*q;p=a;q=a[2];则a[qp]=?    答:a[qp]=a[2]=2;这题是要告诉我们指针的运算特点    6.定义int**a[3][4],则变量占有的内存空间为:    答:此处定义的是指向指针的指针数组对于32位系统指针占内存空间4字节因此总空间为3×4×4=487.编写一个函数要求输入年月日时分秒输出该年月日时分秒的下一秒如输入xx年12月31日23时59分

6、59秒则输出XX年1月1日0时0分0秒答:/*输入年月日时分秒输出年月日时分秒的下一秒输出仍然在原内存空间*/voidNextMinute(int*nYear,int*nMonth,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)

7、{*nHour=0;(*nDate)++;switch(*nMonth){case1:case3:case5:case7:case8:case10:case12:nDays=31;break;case2://判断闰年if(*nYear%400==0*nYear%100=0*nYear%4==0){nDays=29;}else{nDays=28;}break;default:nDays=30;break;}if(*nDate>nDays){*nDate=1;(*nMonth)++;if(*nMonth>12){*nMonth=1;(*nYear)++

8、;}}}}}}/*示例可运行代码*/voidmain(){intnYear=xx,nMonth=12,nDate=31,n

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

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

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