C++ 考试试卷
得 分 一、单项选择 ( 每空 1 分,共 20 分 )
( 注意选项填写到下面表格中 !)
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
c | b | d | c | b | |||||
11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
1.已知: char *s="123456"; 则 cout<<s+2; 的输出结果为( )。
A)123456 B) 3 C) 3456 D) 2
2.已知: char *s="abcde"; 则 sizeof(s) 、 sizeof(*s) 、 strlen(s) 的值依次为( )。
A)6 1 5 B) 4 1 5 C) 6 5 4 D) 4 4 5
3.下列语句中正确的是( )。
A)char *s; *s="abcdefg";
B)char *s; cin>>s;
C)char *s1="abcd",*s2="efghijk";strcpy(s1,s2);
D)char *s="abcdefg"; cout<<*s;
4.C++ 中,关于构造函数和析构函数,正确的描述是( )。
A)在定义类时,必须自定义构造函数和析构函数,在创建对象时自动调用构造函数,在释 放对象时自动调用析构函数
B)构造函数和析构函数均可以重载
C)已知类 Student 以及 Student *p; 在使用 p=new Student; 时自动调用无参构造函数创建
动态对象,在 delelte p; 时自动调用析构函数释放动态对象
D)构造函数和析构函数都可以成为虚函数
A)通常的拷贝构造函数的参数是对象的指针类型
B)如果不自定义拷贝构造函数,系统提供默认的拷贝构造函数
C)如果有自定义的构造函数,系统就不再提供拷贝构造函数
D)如果需要用已有对象为新创建的对象初始化时,就必须自定义拷贝构造函数
6.有关静态成员的描述错误的是( )。
A)某个类的静态数据成员由该类的所有对象所共享
B)类的公有静态数据成员既可以用类的对象访问, 也可以直接用作用域运算符 “ ::通”过类名 来访问
C)静态数据成员既可以是私有成员,也可以是公有成员
D)类中一旦定义了静态数据成员,就必须定义静态成员函数,以便对静态数据成员进行操 作
7.一个类的友元函数或友元类能够通过成员访问运算符访问该类的( )。
A)所有成员 B) 私有成员 C) 保护成员 D) 公有成员
8.下面关于继承方式的描述中错误的是( )。
A)公有继承时,基类的公有成员和保护成员在派生类中都成为公有成员
B)私有继承时,基类的公有成员和保护成员在派生类中都成为私有成员
C)保护继承时,基类的公有成员和保护成员在派生类中都成为保护成员
D)无论哪种继承方式,基类中的私有成员在派生类中都无法直接访问
9.类型兼容是指在基类对象可以出现的地方,都可以使用公有派生类的对象,已知:
class BaseClass
{ // ⋯ };
class DerivedClass:public BaseClass
{ // ⋯ };
BaseClass b,*pb;
DerivedClass d,*pd;
下面不属于类型兼容的是( )。
A)b=d;
B)BaseClass &bb=d;
C)pd=&b;
D)pb=&d;
10.在派生类中重新定义虚函数时,除了( ),其他方面都必须与基类中相应的虚函数 保持一致。
A)参数个数 B) 参数类型 C) 函数名称 D) 函数体
11.下列运算符中,必须使用成员函数进行重载的是( )。
A)== B) = C) >> D) ++
12.下列关于运算符重载的描述中,错误的是( )。
A)运算符重载不可以改变优先级
B)运算符重载不可以改变结合性
C)运算符重载不可以改变运算符的操作数个数
D)加法运算符 “ +和”赋值运算符 “ =都”重载之后,意味着 “ +=也”被重载了
13.有关运算符重载的说法错误的是( )。
A) 在一个类中,可以对一个操作符进行多次重载
B)重载赋值运算符 “ =时”,为了保持原有特性, 重载运算符函数中应该使用返回语句 “ return *this; ”
C)C++ 中所有的运算符都可以被重载
D)如果在某个类中使用成员函数对运算符重载,其左操作数必须是该类的对象
14.已知某个类的友元函数重载了 += 和-,a,b,c 是该类的对象,则 “ a+=b-c ”被 C++ 编译 器解释为( )。
A) operator+=(a,operator-(b,c))
B)a.operator+=(b.operator-(c))
C)operator+=(a,b.operator-(c))
D)a.operator+=(operator-(b,c))
15.下面 4 个选项中,专门用于读取单个字符的是( )。
A) ad() B) () C) cin.put() D) line()
A) getline( ) 函数仅用于从键盘而不能从文件读取字符串指针函数的作用
B)getline( ) 函数读取字符串长度是受限制的
C)getline( ) 函数读取字符串时,遇到终止符就停止
D)getline( ) 函数中所使用的终止符默认是换行符,也可指定其他终止符
17.打开文件的方式中,( )以追加方式打开文件。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论