东南大学C++下模拟试卷A.docVIP

  • 28
  • 0
  • 约5.21千字
  • 约 7页
  • 2020-09-10 发布于浙江
  • 举报
C++下模拟试卷A PAGE PAGE 1 东南大学暑期C++程序设计(下)模拟试卷A 2005-6-28 一、选择题 (每题1分,共20分) 1. 有关指针的说法中, 是错误的。 赋予一个指向某种类型的指针变量的值只能是一个该类型变量的地址; 范型指针的值可以直接赋给其他类型的指针; 任何类型指针变量的值都可以是NULL; 仅当指针与数组建立联系,对指针变量进行的运算才有意义。 2. 有关内存分配的说法中, 是错误的。 指针变量可以保存动态分配的存储空间的地址。 用new为指针变量分配的存储空间在堆区。 数据元素存储在堆区的数组在建立时已被清零。 指向静态变量的指针不必用delete释放。 3. 定义一个类的友元函数的主要作用是 。 允许在类外直接访问类中的私有成员和保护成员 为了重载运算符 能够被类的成员函数调用 D、能够被类的派生类的成员函数调用 4. 对于拷贝构造函数有深拷贝和浅拷贝之分,二者的区别在于 。 深拷贝能用’=’运算符进行对象的拷贝,而浅拷贝不能。 深拷贝能对数据成员进行初始化,而浅拷贝不能。 浅拷贝不能复制指针型的数据成员,而深拷贝可以。 浅拷贝使对象共享动态分配的资源,而深拷贝为对象分配独自拥有的资源。 5. 类的封装性体现在用户只能通过公共的接口使用类中定义的私有数据成员,这里的“公共接口”是指 。 A、公有的成员函数 B、友元函数 C、构造函数 D、指向函数的指针 6. 为了实现代码重用,可以采用C++提供的 方法。 A、公共函数 B、类派生 C、内联函数 D、虚函数 7. 继承具有 特性,即当基类本身也是某一个类的派生类时,底层的派生类也会自动继承间接基类的成员。 A、规律性 B、重复性 C、传递性 D、多样性 8. 下面有关虚函数的描述是错误的 。 可以实现编译时的多态性 B、无条件地实现动态的多态性 C、可以实现运行时多态性 D、只有与指针或引用结合才可以实现运行时的多态性 9. 在从输入流中提取字符的操作中,如果遇到文件结束符 则应结束操作。 A、BOF B、EOF C、ENDL D、ENDF 10. 现需要对list类对象使用的逻辑运算符“==”重载,以下函数声明 是正确的。 list list::operator == (const list a); B、list list::operator == (const list a); C、 bool list::operator == (const list a); D、 bool list::operator == (const list a); 二、填空题 (每空1分,共6分) 1.运算符重载时,其函数名由 和 构成。 2.在用new运算符建立一个三维数组15*30*10时,使用了 个下标运算符[],而用delete运算符注销这个三维数组时使用了 个下标运算符[]。 3.纯虚函数定义时在函数参数表后加=0,它表明程序员对 不定义,其本质是将指向函数体的指针定为 。 二、阅读程序,写出运行结果 (每题5分,共20分) 1. 执行以下程序时,依次输入数据2、8和-1,写出屏幕显示的输入输出。 1.答:#include iostream.h 1.答: const N=10; void main() { int i,m,k=1; int data[N]; for(i=0;iN;i++) data[i]=i; while(k=0 kN){ cout起始位置:; cink; if(k0) break; m=0; for(i=k; iN; i+=2){ coutdata[i],; m++; } cout数据个数:mendl; } } 2.写出以下程序执行时的屏幕输出 #include iostream.h 2.答:int fun(int a[], int n, int max){ 2.答: int i; int s=0; for(i=0;in;i++){ if(a[i]max) { max=a[i]; s=i; } } return s; } void

文档评论(0)

1亿VIP精品文档

相关文档