C. 避免数据丢失
D. 防止不同模块之间数据的非法访问
二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案 。错填、不填均无分。
1. 若要使用string类,需要引入的头文件是_string.h__。
2. 在函数前面用_inline__保留字修饰时,则表示该函数表为内联函数。 3. 向量操作方法中___方法返回向量中的第一个对象。
4. C++派生类使用两种基本的面向对象技术:第一种称为性质约束,即对基类的性质加以限制
;第二种称为_性质扩展__,即增加派生类的性质。
5. 重载的运算符保持其原有的_操作数__、优先级和结合性不变。
6. 编译时的多态性通过_重载__函数实现。
7. 预处理语句有三种,分别是宏定义、文件包含和_条件编译__。
8. 构造函数、析构函数和友元函数中,不是该类成员的是_友元函数__。
9. 控制格式输入输出的操作中,函数_setw(int)__是设置域宽的。要求给出函数名和参数类型)。 10. 派生类的成员一般分为两部分,一部分是_从基类继承的成员__,另一部分是自己定义的新成员。 11. C++中ostream的直接基类_ios__。
12. vector的___方法返回向量中的最后一个对象。 13. 执行下列代码
int i=230;
cout <<\程序的输出结果为_i=E6__。
14. 在C++中有两种参数传递方式即值传递和_引用__传递。
15. 使用new为int数组动态分配10个存储空间是_new int [10];__。 16. 面向对象的四个基本特性是多态性、继承性、和封装性_抽象__。 17. 定义虚函数所用的关键字是_virtual__。 18. 执行下列代码
cout<<“oct:”< 19. 在C++中要创建一个文件输入流对象fin,同时该对象打开文件“Test.txt”用于输入,则 正确的声明语句是_ifstream fin(“Test.txt”);__。 20. 如果一个派生类只有一个唯一的基类,则这样的继承关系称为_单继承__。 三、改错题(本大题共5小题,每小题2分,共10分)下面的类定义中有一处错误,请用下 横线标出错误所在行并给出修改意见。 1. class ABC {int a; public: ABC(int aa)a(aa){} ABC(int aa):a(aa){} }; 2. #include class T {protected: int p; public: T(int m){p=m;} }; void main() { T a(10); cout< 3. #include Time(int h,int m,int s) {hour=h,minute=m,sec=s;} void show(Date & d); private: int hour,minute,sec; }; class Date {public: Date(int m,int d,int y) {month=m,day=d,year=y;} friend void Time::show(Date &); private: int month,day,year; }; void Time::show(Date & d) {cout< void main() {Time t1(9,23,50); Date d1(12,20,2008); t1.show(d1); 4. 输出最小值,有一处错误。 #include {return (a void setValue(int x1,int x2,int x3) {a=x1;b=x2;c=x3;} int GetMin(); }; int Test::GetMin() {int d=getmin(); return (d=d void main() {Test t1; t1.setValue(34,6,2); cout< 5. 实现数值、字符串的交换。 #include temp=a,a=b,b=temp; } void main() {int a=5,b=9; char s1[]=\[]=\Swap(a,b); Swap(s1,s2); cout<<\cout<<\} 四、完成程序题(本大题共5小题,每小题4分,共20分) 1. 在下划线处填上缺少的部分。 #include A(int i=0,int j=0)_____;//定义构造函数,使参数i和j的默认值为0 {a=i;b=j;}//在函数体中用i初始化a,用j初始化b }; main() {A *p; p=new A(4,5)_____;//调用带参构造函数生成由p指向的动态对象 //使a和b成员分别被初始化为4和5 } 2. 在下面程序横线处填上适当内容,使程序执行结果为: S=2 S=5 S=9 #include void main (void) {int i; for (i=0;i<3;i++________) sum(i); } 3. 下面程序运行的结果是:5+10=15。 #include Test() {x=y=0;} void Setxy(int x,int y) {(*this).x=x;(*this).y=y______} void show(){cout< void main() {Test ptr; ptr.Setxy(5,10); ptr.show(); } 4. 完成下面类中成员函数的定义。 #include int n;//数组大小(元素个数) public: Arr(int sz=10) { n=sz; p=new float[n]; } ~Arr(void) { _delete p;________ } int Getn(void) const
相关推荐: