C++试卷及答案分析和总结.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 PAGE 第 PAGE 10页,共11页 C++程序设计 (A) 一、选择题(每小题 2 分,共 20 分) 1、关于对象概念的描述中,( )是错误的。 对象就是C 语言中的结构变量 对象代表着正在创建的系统中的一个实体 对象是一个状态和操作(或方法)的封装体 对象之间的信息传递是通过消息进行的 2、对于int *pa[5];的描述,( )是正确的。 pa 是一个指向数组的指针,所指向的数组是5 个 int 型元素 pa 是一个指向某个数组中第 5 个元素的指针,该元素是int 型变量 pa[5]表示某个数组的第 5 个元素的值 pa 是一个具有 5 个元素的指针数组,每个元素是一个int 型指针3、下列for 循环的循环体执行次数为( )。 for(int i=0,j=10;i=j=4;i++,j- -) A. 0 B. 无限 C. 4 D. 1 4、下述静态数据成员的特征中,( )是错误的。 说明静态数据成员时前边要加修饰符static 静态数据成员要在类体外进行初始化 引用静态数据成员时,要在静态数据成员名前加类名和作用域运算符 静态数据成员不是所有对象所共用的5、( )是析构函数的特征。 A. 一个类中只能定义一个析构函数 B. 析构函数与类名不同 C. 析构函数的定义只能在类体内 D. 析构函数可以有各个或多个参数。 6、已知:p 是一个指向类A 数据成员m 的指针,A1 是类 A 的一个对象, 如果要给m 赋值为 5,下列表达式( )是正确的。 A. A1.p=5 B. A1-p=5 C. A1.*p=5 D. *A1.p=5 7、关于new 运算符的下列描述中,( )是错误的。 它可以用来动态创建对象和对象数组 使用它创建的对象或对象数组可以使用运算符delete 删除 使用它创建对象时要调用构造函数 使用它创建对象数组时必须指定初始值 8、派生类的对象对它的基类成员中( )是可以访问的。 公有继承的公有成员 公有继承的私有成员 公有继承的保护成员 私有继承的公有成员 9、下列( )是引用调用。 A.形参是指针,实参是地址值 B.形参和实参都是变量 C.形参是引用,实参是变量 D.形参是变量,实参是引用 10、下述关于开关语句的描述中,( )是正确的。 A.开关语句中default 子句可以没有,也可以有一个; B.开关语句中每个语句序列中必须有break 语句; C.开关语句中default 子句只能放在最后; D.开关语句中case 子句后面的表达式可以是整形表达式。二、填空题(共 60 分) (一)、基本概念题(每题 2 分,共 10 分) 1、 (1) 类型转换专门针对有虚函数的继承结构,它将基类指针转换成其派生类指针, 以做好派生类操作的准备。 2、函数重载是指函数的 (2) 不同。 3、设有说明语句: int a[ ][4]={{1,2}, {2,3,4,5}}, *p=(int *)a; 则*(p+5)的值为 (3) 。4、设有宏定义和变量说明: #define T(x,y) x+y int a= T(3,4) * T(3,5); 则变量a 的初值为 (4) 。 5、编程质量的衡量标准包括可读性、易编程性、安全性、可扩充性、效率和 (5) 。 (二)、完善程序题(每空 2 分,共 20 分) 1、单链表中结点按元素值递增链接,DeleteAb 实现删除结点值在a 至 b 之间的结点(a≤b) 的功能。 #includeiostream.h struct node { int x; node *link; } node *DeleteAb(int a,int b,node *first) { node *p=first; node *q= (6) ; while( p p-xb ) { if ( (7) ) { q=p; p=p-link; } else if(q==first) { q= (8) ; p=first=q; } else { q-link= (9) ; p=q-link; } } return (10) ; } void main( ) { node a[10]={ {1},{2},{3},{4},{5},{6},{7},{8},{9},{10} },*hd=a,*p; int x,y; for( int i=0;i9;i++ ) a[i].link=a[i+1]; a[9].link=NULL; p=DeleteAb(x,y,hd); while(p) { coutp-x; p=p-link; } } 2、程序构造了一个集合类,其中以整形数组存放集合中的元素。通过重载运算符“*”,实现求两个集合交集的运算,即两个集合的共有元素。例如

文档评论(0)

hao187 + 关注
官方认证
文档贡献者

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

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地上海
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档