1、有数组定义inta[2][2]={{1},{2,3}};则a[0][1]的值为0。()2、int(*ptr)(),则ptr是一维数组的名字。()3、指针在任何情况下都可进行>,<,>=,<=,==运算。()4、switch(c)语句中c可以是int,long,char,float,unsignedint类型。()5、#defineprint(x)printf("theno,"#x",is")二、填空题(共30分)1、在windows下,写出运行结果,每空2分,共10分。charstr[]="Hello";char*p=str;intn=10;sizeof(str)=()sizeof(p)=()sizeof(n)=()voidfunc(charstr[100]){}sizeof(str)=()2、voidsetmemory(char**p,intnum){*p=(char*)malloc(num);}voidtest(void){char*str=NULL;getmemory(&str,100);strcpy(str,"hello");printf(str);}运行test函数有什么结果?()10分3、设intarr[]={6,7,8,9,10};int*ptr=arr;*(ptr++)+=123;printf("%d,%d",*ptr,*(++ptr));()10分二、编程题(第一小题20,第二小题30分)1、不使用库函数,编写函数intstrcmp(char*source,char*dest)相等返回0,不等返回-1;2、写一函数intfun(char*p)判断一字符串是否为回文,是返回1,不是返回0,出错返回-1***********************************************************找错Voidtest1(){charstring[10];char*str1=”0123456789”;strcpy(string,str1);}Voidtest2(){charstring[10],str1[10];for(I=0;I<10;I++){str1[i]=’a’;}strcpy(string,str1);}Voidtest3(char*str1){charstring[10];if(strlen(str1)<=10){strcpy(string,str1);}}#defineMAX_SRM256DSNget_SRM_no(){staticintSRM_no;intI;for(I=0;I{SRM_no%=MAX_SRM;if(==IDLE){break;}}if(I>=MAX_SRM)return(NULL_SRM);elsereturnSRM_no;}(inta){autointc=0;staticintb=3;c+=1;b+=2;return(a+b+C);}voidmain(){intI;inta=2;for(I=0;I<5;I++){printf(“%d,”,sum(a));}}(inta){intb;switch(a){case1:30;case2:20;case3:16;default:0}returnb;}则fu
华为笔试题-软件 来自淘豆网www.taodocs.com转载请标明出处.