中兴软件测试面试题
求职指导1.77W
1. 下面这段代码的输出是多少(在32位机上).
char *p;
char *q[20];
char *m[20][20];
int (*n)[10];
struct MyStruct
{
char dda;
double dda1;
int type ;
};
MyStruct k;
printf("%d %d %d %d",sizeof(p),sizeof(q),sizeof(m),sizeof(n),sizeof(k));
答案:4,80,1600,4,24
(1)
char a[2][2][3]={{{1,6,3},{5,4,15}},{{3,5,33},{23,12,7}} };
for(int i=0;i<12;i++)
printf("%d ",__a[0][0][i]_);
在空格处填上合适的语句,顺序打印出a中的'数字
(2)
char **p, a[16][8];
问:p=a是否会导致程序在以后出现问题?为什么?
答:没有问题,只是使用时要小心,p是指向指针的指针。
3.用递归方式,非递归方式写函数将一个字符串反转.
函数原型如下:char *reverse(char *str);
答:非递归方式:
char *reverse(char *str)
{
if(str!=NULL)
{
int length = strlen(str);
char *dst=NULL;
dst=(char*)malloc((length+1)*sizeof(char));
int i=0;
for(i=0;i<length;i++)< p="">
{
dst[i]=str[length-1-i];
}
dst[i]='