46. (2分)以下程序中函数scmp的功能是返回形参指针s1和s2所指字符串中较小字符串的首地址
#include
#include
char *scmp(char *s1, char *s2)
{ if(strcmp(s1,s2)<0)
46. (2分)以下程序中函数scmp的功能是返回形参指针s1和s2所指字符串中较小字符串的首地址
#include
#include
char *scmp(char *s1, char *s2)
{ if(strcmp(s1,s2)<0)
return(s1);
else return(s2);
}
main()
{ int i; char string[20], str[3][20];
for(i=0;i<3;i++) gets(str[i]);
strcpy(string,scmp(str[0],str[1])); /*库函数strcpy对字符串进行复制*/
strcpy(string,scmp(string,str[2]));
printf("%s\n",string);
}
若运行时依次输入:abcd、abba和abc三个字符串,则输出结果为
A. abcd B. abba
C. abc D. abca
47. (2分)有以下程序
struct s
{ int x,y;
} data[2]={10,100,20,200};
main()
{ struct s *p=data;
printf("%d\n",++(p->x));
}
程序运行后的输出结果是
A. 10 B. 11
C. 20 D. 21
48. (1分)有以下程序段
main()
{ int a=5,*b,**c;
c=&b; b=&a;
……
}
程序在执行了c=&b;b=&a;语句后,表达式:**c的值是
A. 变量a的地址 B. 变量b中的值
C. 变量a中的值 D. 变量b的地址
49. (2分)有以下程序
#include
main()
{ char str[][20]={"Hello","Beijing"},*p=str;
printf("%d\n",strlen(p+20));
}
程序运行后的输出结果是
A. 0 B. 5
C. 7 D. 20
50. (2分)已定义以下函数
fun(char *p2, char *p1)
{ while((*p2=*p1)!='\0'){ p1++;p2++; } }
函数的功能是
A. 将p1所指字符串复制到p2所指内存空间
B. 将p1所指字符串的地址赋给指针p2
C. 对p1和p2两个指针所指字符串进行比较
D. 检查p1和p2两个指针所指字符串中是否有'\0'
展开
全部