1 全国2004 年10 月试题及答案 面向对象程序设计试题 课程代码:02328 一、单选 1、程序设计中,首先在问题域中识别出若干个( ) A.函数 B.类 C.文件 D.过程 2、定义类模板用关键字( ) A.const B.new C.delete D.template 3、运算结果类型相同的( ) A. 9.0/2.0 9.0/2 B. 9/2.0 9/2 C. 9.0/2 9/2 D. 9/2 9.0/2.0 4、已知f1 f2 同一类两个成员函数,但f1 不能调用f2,说明( ) a.f1 f2 都是静态函数 b.f1 是静态,f2 不是 c.f1 不是,f2 是静态 d.f1 f2 都不是静态函数 5、调用一成员函数时,使用动态联编的情况是( ) A.通过对象调用一虚函数 B.通过指针或引用调用一虚函数 C.通过对象调用静态函数 D.通过指针或引用调用一静态函数 6、假定一个类构造函数为:“A(int aa=1,int bb=0){a=aa;b=bb;}则执行"A x(4)"后,x.a 和 x.b 值分别是:( ) A.1,0 B.1,4 C.4,0 D.4,1 7、在派生类中能直接访问基类的( ) A.公有成员,私有成员 B.保护成员,私有成员 C.不可访问成员,私有成员 D.公有成员,保护成员 8、不具访问权限属性的是:( ) A.非类成员 B.类成员 C.数据成员 D.函数成员 9、类定义中private,protected,public 出现次数为( ) A.任意多次 B.至多一次 C.public 至少一次 D.至少一次 10、C++鼓励程序员将( ) A.数据操作分别封装 B.不同类型数据封装 C.数据操作封装在一起 D.不同作用操作封装在一起 答案:B D A B B C D A A C 二、填空 1、C++中,最好用( )代替 malloc 2、函数模板中template 之后尖括号的类型参数冠以保留字( ) 2 3、在 IOS 类中定义的用于格式控制的枚举变量中十、八、十六进制是 dec,oct,( ) 4、如果重载了运算符+,则相应运算函数名是( ) 5、由 static 修饰的数据成员为该类的所有对象( ) 6、为了实现多态性,派生类需要重新定义基类中的( ) 7、编译时多态性通过()函数实现。 8、派生类中实现基类成员初始化,需由派生类的构造函数调用()来完成。 9、C++中访问指令所指对象的成员使用运算符( ) 10、重载函数在参数类型或参数个数上不同但( )相同。 答案:1new 2class 3hex 4operator + 5 共享 6 同名函数 7 重载(函数重载和运算符重载) 8 参数表 9 . 10 函数名 三、改错 1、类定义有错,正确结果为 5+8i #include