内容发布更新时间 : 2024/12/25 23:10:14星期一 下面是文章的全部内容请认真阅读。
C++ 模拟试题1
一、 选择题(在A、B、C、D四个答案中选择一个正确的填入后面的括号中) 1.下面( )是对类ttt的声明。
A. void class ttt; B. class int ttt; C. class ttt( ); D. class ttt;
2. 用于类中虚成员函数说明的关键字是( )
A. public B. virtual C. protected D. private 3.下面是关于静态成员的说法,其中不正确的是( )。
A. 静态成员有类作用域,但与普通非静态成员有所不同 B. 静态函数没有this指针,同一个类的不同对象拥有相同的静态数据成员 C. 静态数据成员的初始化必须在类外进行 D. 静态函数同样可以访问非静态数据成员 4. 下面的说法中,不正确的一句是( )。
A.类的友元函数是类的特殊成员函数,它对所有的类成员、保护成员和私有成员享有完全访问特权。
B. 一个类的友元类中的成员函数都是这个类的友元函数
C. 适用于类成员函数和数据的访问控制同样适用于枚举和嵌套类
D. 与结构类似,类也可以互相嵌套,适用于嵌套结构的规则也适用于嵌套类 5. ( )语言是面向对象的语言。
A. C B. Pascal C. Fortran D. C++ 6. C++风格的源文件包含的输入输出头文件为()
A. stdio.h B. stdafx.h C. iostream.h D. stream.h 7. 与C语言printf(“Hello word\\n”) ;语句功能相同的C++语句是()
A. cout>>”Hello word\\n” B. cin>>” Hello word\\n” C. cout<<” Hello word\\n” D. cin<<” Hello word\\n”
8. 在下面几个元素中,不是面向对象的要素的是( );
A. 重载 B. 对象 C. 类 D. 继承 9. 对于int *pa[5];的描述,下面叙述正确的是( );
A. pa是一个指向数组的指针,所指向的数组是5个int型元素; B. pa是一个指向某数组中第5个元素的指针,该元素是int型变量; C. pa是一个具有5个元素的指针数组,每个元素是一个int型指针; D. pa[5]表示某个数组的第5个元素的值。
10. 下面程序使用new与delete命令:
#include
long *p , i; p=new long;
if(!p) {
cout<<”Allocation error\\n”; return 1; }
*p=1000; i=(long)p;
cout<<”Here is integer at p:”<<*p<<”\\n”; cout<<”Here is i: “<
}
下面是对这段程序的叙述,其中正确的是()。 A. 有错误,编译不能通过 B. 正确,执行结果为:1000 1000 C. 正确,但执行结果的第二个数值不定 D. 正确,执行结果的各个数值均不为1000
二、判断下列描述正确性,对者划√,错者划×(每小题2分)。
1. C++中标识符内的大小写字母是没有区别的。 2. 宏定义命令是分号结束的。 3. C++的程序中,对变量一定要先说明再使用,说明只要在使用之前就可以。 4. while循环语句的循环体至少执行一次。 5. 在C++中,所有函数在调用前都要说明。 6. 析构函数是一种函数体为空的成员函数。 7. 如果一个函数没有返回值时,定义时需要用void说明。 8.派生类是从基类派生出来的,它不能再生成新的派生类。
9.对象成员的表示与结构变量成员表示相同,使用运算符.或->。 10.构造函数和析构函数都可以重载,因为它们都是成员函数。 三、写出下面程序的输出结果。
1.#include
void main() { int a,b,c;
a=1,b=2,c=a+b+3;
cout< 2. #include void swap(int &x,int &y) { int temp; temp=x; x=y; y=temp; cout<<”x=”< void main() { int a(5),b(9); swap(a,b); cout<<”a=”< 3. #include class A { public : A( ); A(int i,int j); void print( ); private : int a,b; }; A::A( ) { a=b=0; cout<<”Default constructor called.\\n”; } A::A(int i,int j) { a=i; b=j; cout<<”Constructor called.\\n”; } void A::print( ) { cout<<”a=”< void main( ) { A m,n(4,8); m.print( ); n.print( ); } 四、编程或程序填空。 1.在下划线处填上正确的语句并给出程序的输出结果(6分)。 #include public: strA(float,float,float);