c++期末考试题及答案_第1页
c++期末考试题及答案_第2页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.-.优选.优选-202401. 关于C+与Ca.C 语言是C+语言的一个子集b.C 语言与C+语言是兼容的c.C+语言对Cd.C+语言和C 语言都是面对对象的2a.连接符b.下划线c.大小写字母d.数字字符3. 为了防止嵌套的if-elseC 语言规定elsea.缩排位置一样的ifb.在其之前未配对的ifc.在其之前未配对的最近的ifd.同一行上的if4. 在int a 3=1,3,2,4,5,6,0;中,a22a.1b.0c.6d.2设char *sa.s=puter;b.*s=puter; c.*s=puter;d.*s=c;对于int *pa5a.pa5intb.pa*5intc.pa

2、 5表示*5d.pa5int在以下表示引用的方法中:int m=10; &*=m; &y=10; &z; d.float &t=&m;以下forfori=0, *=0; !*&i=5; i+a.5b.6c.1 d.无限对于C/C+语言的函数,以下表达中正确的选项是 函数的定义不能嵌套,但函数调用可以嵌套b.函数的定义可以嵌套,但函数调用不能嵌套c.函数的定义和调用都不能嵌套d.函数的定义和调用都可以嵌套在一个被调用函数中,关于returna.被调用函数中可以不用return被调用函数中可以使用多个return 语句被调用函数中,假如有返回值,就确定要有return

3、 语句被调用函数中,一个return 语句可以返回多个值给调用函数联函数 b.重载函数c.递归调用d.嵌套调用使用fseeka.转变文件指针的当前位置b.文件的挨次读写c.文件的随机读写d.以上都不对以下存储标识符中a.外部类b.自动类 c.部静态类d.存放器类在如下构造定义中,不正确的选项是 a.struct studentint no;char name10;float score;b.struct stud20int no;char name10;float score;c.struct studentint no;char name10;float score; stud20;d.st

4、ructint no;char name10;float score;stud100 ;将两个字符串连接起来组成一个字符串时,选用 函数。a.strlen( )b.strcpy( )c.strcat( )d.strcmp( )( )不是构造函数的特征构造函数的函数名与类名一样b.构造函数可以重载c.构造函数可以设置缺省参数d.构造函数必需指定类型说明:类Avoid Set(A&a);其中,A&的含义是( )。a.指向类A 的指针为ab.将a 的地址值赋给变量Setc.a 是类A 对象的引用,用来作函数Set的参数d.变量AaSet( )的参数:print( )函数是一个类的常成员函数,它无返回

5、值,以下表示中a.void print( ) const;b.const void print( );c.void const print( );d.void print(const);关于虚函数的描述中a.虚函数是一个static 类型的成员函数b.虚函数是一个非成员函数c.基类中说明白虚函数后,派生类中将其对应的函数可不必说明为虚函数d.派生类的虚函数与基类的虚函数具有不同的参数个数和类型关于newa.它可以用来动态创立对象和对象数组b.使用它创立的对象和对象数组可以使用运算符delete 删除c.使用它创立对象时要调用构造函数d.使用它创立对象数组时必需指定初始值二、问答题151、 32

6、、 33、 44、 3C+继承是如何工作的.5、 2 6*include class Bpublic:B()B(int i)b=i; virtual void virfun()coutB:virfun() called.n;private:int b;class D:public Bpublic:D()D(int i,int j):B(i)d=j;private:int d;void virfun()coutvirfun();void main()D *pd=new D;fun(pd);9 分下面的程序可以统计命令行第一个参数中毁灭的字母个数,请填充下面空白,完成程序。*include *in

7、clude void main(int argc, argv;)char *str; int count=0;if(argc2)e*it(1);str= ;while(*str)if(isalpha( ) count+; printf(n%dn,count);提示:int isalpha(int ch)函数功能是检查ch8 分 定义一个字符栈类Stack包括类的实现)。数据成员包括一个存放字符的数组stck 和一个栈指针 tosSIZEPush和Pop六、(10 分)完成下面的函数,对有n 个元素的数组a,使数组元素按逆序排列。void inverse(int *a, int n)12subs

8、tr 在字符串strsubstrstr0。请完成该函数。int str_count(char *substr, char *str)一、 选择填空题1、D2、A 3、C 4、C 5、B6、D 7、A 8、B 9、A 10、D11、A 12、A 13、C 14、B 15、C16、D 17、C 18、A 19、C 20、D二、问答题1解答要点:这个问题。2解答要点:当用对象作为函数参数传递时 当函数返回对象时3解答要点:函数的函数名、参数个数、类型与返回值均一样;C+中正是通过虚函数的掩盖,实现多态的功能。4C+继承是如何工作的.解答要点:继承使得派生类能够使用基类的公有和疼惜成员,从而实现代码的

9、复用,派生类可以增加成员,也可以隐蔽和掩盖基类的成员。对于公有继承,基类成员的访问权限在派生类保持不变。5解答要点:单元,而类不占存储单元。三、运行结果为:D:virfun() called.四、填空 char * argv1 *str+五、8 分 定义一个字符栈类 Stack包括类的实现)。数据成员包括一个存放字符的数组 stck 和一tosSIZEPushPop。const int SIZE=27;class Stackpublic: Stack():tos(0); void Push(char ch);char Pop();private:char stckSIZE;int tos;vo

10、id Stack:Push(char ch)if(tos=SIZE)coutnStack is fulln;elsestcktos=ch;tos+;char Stack:Pop()if(tos=0)coutnStack is emptyn;return 0;tos-;return stcktos;(10 分)n 个元素的数组 a,使数组元素按逆序排列。 void inverse(int *a, intn)int i,*p; p=newintn;for(i=0;i=n-1;i+)pi=ai;for(i=0;i=n-1;i+)ai=pn-i-1;delete p;12substrstrsubstrstr 中不毁灭,则返回值 0。请完成该函数。int str_count(char *substr, char *str)int count=0;char*pChar;if(substr=NULL|str=NULL) return count;w

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论