2010-2011第二学期面向对象程序设计第1套期末试题.doc

2010-2011第二学期面向对象程序设计第1套期末试题.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2010-2011第二学期面向对象程序设计第1套期末试题2010-2011第二学期面向对象程序设计第1套期末试题

课程教研室 计算机科学与技术(工) 使用专业 计算机科学与技术(工)(网络) 年级 2010级 班级学号 考生姓名 考试地点 ————————¤—————¤——————————装订线—————————¤———————¤—————— 北华大学计算机科学技术学院2010-2011学年第二学期 《面向对象程序设计》课程期末考试试卷(1) 题号 一 二 三 四 五 总分 得分 评卷人 核分: 选择题(每小题2分,共20分) 1、一个函数功能不太复杂,但要求被频繁调用,则应把它定义为 ( ) A.嵌套函数 B. 重载函数 C. 递归函数 D.内联函数 2、关于new运算符的下列描述中,错误的是( ) A. 它可以用来动态创建对象和对象数组 B. 使用它创建的对象或对象数组可以使用运算符delete删除 C. 使用它创建对象时要调用构造函数 D. 使用它创建对象数组时必须指定初始值 3、类中的某一函数,其名称与类名完全相同,在类生成对象时系统自动调用,它是( )。 A.静态函数 B. 析构函数 C.友元函数 D.构造函数 4、在下面有关析构函数特征的描述中,正确的是( )。 A.析构函数可以重载 B.在类中,程序员如不写出自定义的析构函数,该类中就没有析构函数 C.析构函数中必须写出输出语句 D.类中的析构函数只能有一个 5、下列对派生类的描述,( )是错误的。 A.派生类是新类 B.一个派生类可以作为另一个派生类的基类 C.派生类中可以定义构造函数用于初始化自身的数据成员 D.派生类中的构造函数是从基类继承下来的 6、下面叙述错误的是( )。 A.无论何种继承方式,派生类中的函数均不可直接访问基类的私有成员 B.无论何种继承方式,派生类中的函数均可直接访问基类的保护成员 C.无论何种继承方式,派生类中的函数均可直接访问基类的公有成员 D.私有继承下,派生类中的函数不可直接访问基类的公有成员 7、下列关于纯虚函数与抽象类的描述中,错误的是( )。 A. 抽象类可以生成对象 B. 纯虚函数是一种特殊的函数,它允许没有具体的实现 C. 含有纯虚函数的类是抽象类 D. 抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出 8、复数类Complex中使用成员函数重载+号双目运算符,函数声明正确的是( ) A. Complex operator+() B. Complex operator+( Complex T) C. friend Complex operator+() D. friend Complex operator+(Complex T1,Complex T2) 9、在C++中,使用流进行输入输出,其中用于屏幕输入( ) A.cerr B. cin C. cout D. clog 10、设有函数模板 template class Q Q Sum(Q x,Q y) {return (x)+(y);} 则下列语句中对该函数模板错误的使用是( ) A. Sum(10,2);B. Sum(5.0,6.7);C. Sum(15.2f,16.0f); D. Sum(“AB”,”CD”); 课程教研室 计算机科学与技术(工) 使用专业 计算机科学与技术(工)(网络) 年级 2010级 班级学号 考生姓名 考试地点 ————————¤—————¤—————————装订线————————¤———————¤————————- 二、问答题(每题5分,共20分) 1、根据程序,回答下面问题。 #include string.h char * K(char *s) //A1 { char q[2];q[0]=s[0];q[1]=’\0’; return q; } char *K(char *a,char *b) //A2 {return strcat(a,b);} void main() { char x[6]={‘a’,’b’},y[]={”c”}; coutK(x,y)endl; //A coutK(x)endl;} //B (1)在程序执行到A处和B处时,分别调用A1和A2哪个函数? (2)在该程序中,如还有一函数,其声明形式为 double K(char *p) 请问它与其它K函数能构成函数重载吗?为什么? 2、根据程序,回答下面的问题。 class Myclass { protected: int x; public: Myclass(){x=0;} Myclass(

您可能关注的文档

文档评论(0)

skewguj + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档