一. 单选
1.2.
以下程序的运行结果是()
int main(void)
{
printf("%s , %5.3s\n","computer","computer");
return 0;
}
A A.computer , puter
B.computer , com
C.computer ,computer
D.computer , compu.ter
正确答案:B
解析:%5.3s表示输出栈5列,但是只取字符串中左端3个字符,这3个字符输出在5列的右侧,左端补空格
6.7
关于"深拷贝",下列说法正确的是()
A.会拷贝成员数据的值和会拷贝静态分配的成员对象
B B.只会拷贝成员数据的值
C C.只会拷贝静态分配的成员对象
D D.只会拷贝动态分配的成员对象
正确答案:A
5.3
下列程序的打印结果是?
char p1[15]= "abcd",*p2= "ABCD", str[50]= "xyz";
strcpy(str+2,strcat(p1+2,p2+1));
printf("%s",str);
A A.xyabcAB
B B.abcABz
C C. ABabcz
D D.xycdBCD
E.运行出错
正确答案:D .注意strcat(p1+2,p2+1)是将BCD拼接在abcd的后面,然后返回到c的位置
5.6
STL中的unordered_map和priority_queue使用的底层数据结构分别是什么?()
A. rbtree,queue
B B.hashtable,heap
C C. rbtree,heap
D D.hashtable,queue
正确答案:B
5.7
下面说法正确的是()
A. 一个空类默认一定生成构造函数,拷贝构造函数,赋值操作符,引用操作符,析构函数
B B.可以有多个析构函数
C C.