试题8Word格式.docx

上传人:b****2 文档编号:3234875 上传时间:2023-05-01 格式:DOCX 页数:16 大小:19.33KB
下载 相关 举报
试题8Word格式.docx_第1页
第1页 / 共16页
试题8Word格式.docx_第2页
第2页 / 共16页
试题8Word格式.docx_第3页
第3页 / 共16页
试题8Word格式.docx_第4页
第4页 / 共16页
试题8Word格式.docx_第5页
第5页 / 共16页
试题8Word格式.docx_第6页
第6页 / 共16页
试题8Word格式.docx_第7页
第7页 / 共16页
试题8Word格式.docx_第8页
第8页 / 共16页
试题8Word格式.docx_第9页
第9页 / 共16页
试题8Word格式.docx_第10页
第10页 / 共16页
试题8Word格式.docx_第11页
第11页 / 共16页
试题8Word格式.docx_第12页
第12页 / 共16页
试题8Word格式.docx_第13页
第13页 / 共16页
试题8Word格式.docx_第14页
第14页 / 共16页
试题8Word格式.docx_第15页
第15页 / 共16页
试题8Word格式.docx_第16页
第16页 / 共16页
亲,该文档总共16页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

试题8Word格式.docx

《试题8Word格式.docx》由会员分享,可在线阅读,更多相关《试题8Word格式.docx(16页珍藏版)》请在冰点文库上搜索。

试题8Word格式.docx

cout<

'

'

T:

x<

endl;

}

执行后的输出是

A)202020B)001

C)20201D)有语法或逻辑错误

7.下列程序的输出是

string.h>

{

charp1[20]="

abcd"

*p2="

ABCD"

;

charstr[50]="

xyz"

strcpy(str+2,strcat(p1+2,p2+1));

str<

}

A)xyabcABB)abcABz

C)ABabczD)xycdBCD

8.设有说明int(*ptr)[M];

其中的标识符ptr是

A)M个指向整型变量的指针

B)指向M个整型变量的函数指针

C)一个指向具有M个整型元素的一维数组的指针

D)具有M个指针元素的一维指针数组,每个元素都只能指向整型变量

9.设有如下的函数定义

intf(char*s)

{if(!

(*s))return0;

elsereturn1+f(s+1);

若在主程序中用下面的语句调用上述函数,则输出为

f(“goodbye!

”)<

A)1B)6C)8D)0

10.设有类T的定义为

classT{

intx;

public:

T(inta){x=a;

则下面的说明

Ta;

//

(1)

Tb(4);

//

(2)

Tc=b;

//(3)

Td(b);

//(4)

正确的是

A)

(1),

(2),(3),(4)B)

(1),

(2),(3)C)

(2),(3)D)

(2),(3),(4)

11.下面的函数在m为3,n为1时返回的值是

intAck(intm,intn)

{

if(!

m)returnn+1;

n)returnAck(m-1,1);

else

returnAck(m-1,Ack(m,n-1));

A)13B)2C)21

D)死循环(递归无法结束)

12.下面程序的输出是:

#include<

classBase{

protected:

intx;

Base(inta){x=a;

};

classA:

publicBase{

public:

A(inta):

Base(a){};

intGetX(){returnx;

}};

classB:

B(inta):

classC:

publicB,publicA{

C(inta):

A(a+10),B(a+20){};

Cc(10);

c.A:

GetX()<

'

c.B:

A)30,20B)20,30

C)20,20D)30,30

13.程序的输出为:

classX{

X(inta){x=a;

classA:

virtualpublicX{

public:

A(inta):

X(a){}

classB:

B(inta):

publicA,publicB{

A(20),B(30),X(40){}

voidmain(){

Cc(40);

cout<

c.x<

A)20B)30

C)40D)50

14.程序的输出是:

virtualvoidf()

{cout<

”a”;

}};

//A

classY:

publicX{

voidf()

{cout<

”b”;

voidmain()

{Yy;

X*xp=&

y;

xp->

f();

A)abB)aaC)aD)b

15.将上题中标有//A的一行中

的virtual去掉,则输出为

A)abB)bC)aD)非法

16.下列叙述中,正确的是

A)类是一种用户自定义类型

B)类是实现数据封装的单位

C)一个类可以为多个派生类的基类,派生类也可从多个基类继承

D)以上的说法都是正确的

17.下列定义:

classPoint{intx,y;

Point(inta=0,intb=0);

//

(1)

Point(Point&

aPoint);

//

(2)

Point(Point*p);

Point(PointaPoint);

//(4)

A)

(1)是缺省构造函数

B)

(2)是缺省构造函数

C)(3)是缺省构造函数

D)(4)是缺省构造函数

18.上题中拷贝初始化函数是

A)

(2)B)

(2)和(4)

C)(3)D)没有定义

19.下列叙述中,哪一个不正确?

A)含纯虚函数的类称为抽象类

B)不能直接由抽象类建立对象

C)抽象类中能包含构造函数

D)抽象类中不能包含析构函数

20.下列叙述中正确的是

A)基类中的虚函数在派生类中一定要重定义

B)成员函数中虚函数也可被重载

C)基类中的构造函数不可定义为虚函数

D)以上的没有正确的

二.填空(22分)

1.写出下面程序的输出(3分)

inta=2;

{intb=2,c=3;

++a;

c+=++b;

if(++a||++b||++c)

”first:

”<

a<

’‘<

b<

c<

{inta=3,c;

c=b*3;

a+=c;

”second:

”<

a+=c;

”third:

b;

cout<

2.有下面的程序(输出的空格用_代表,如__123表示占五位,右对齐,2分)

iomanip.h>

{inti=11;

char*p="

ThisC++test\n"

//cout.flags(ios:

uppercase);

setw(10)<

i;

setw(6)<

setfill('

%'

)<

hex<

i<

setw(5)<

p;

3.有下面的程序,输出为:

(2分)

classcolor{

virtual~color(){cout<

”color”<

}//A

classred:

publiccolor{

~red(){cout<

”red”<

classbrightred:

publicred{

~brightred(){cout<

”brightred”<

voidmain(void){

color*pa=newbrightred;

deletepa;

问:

程序能否正确执行?

若能结果是什么?

不能则原因是什么?

4.将上题中标有//A的行中的virtual去掉,则程序的结果又如何?

(1分)

5.程序(2分)

fstream.h>

voidmain(){

fstreaminfile,outfile;

charch;

infile.open("

file1.txt"

ios:

in);

outfile.open("

file2.txt"

out);

while(infile.get(ch))

if(ch>

='

A'

&

ch<

Z'

outfile.put(ch);

infile.close();

outfile.close();

设在缺省目录下有文件file1.txt,

没有文件file2.txt,文件file1.txt中有

如下内容:

aAbc123Bce

问执行上述程序后file1.txt,file2.txt中

的内容是什么?

6.程序的输出是(2分)

voidrecu(charc)

c;

if(c<

’5’)recu(c+1);

recu(‘0’);

7.程序的输出是:

intfun1(intx){returnx+1;

intfun2(intx){returnx*x;

intfun(int(*f)(int),intn){

for(inti=1,sum=0;

i<

=n;

i++)

sum+=f(i);

returnsum;

voidmain(void)

{cout<

fun(fun1,3)<

fun(fun2,3)<

8.下面程序的输出是

classString{

charstr[81];

String(char*p){strcpy(str,p);

String(){str[0]='

\0'

String&

operator=(String);

friendStringoperator+(String&

String&

);

friendostream&

operator<

(ostream&

 

String:

operator=(Stringp){

strcpy(str,p.str);

return*this;

Stringoperator+(String&

st1,String&

st2){

Stringtmp;

strcpy(tmp.str,st1.str);

strcat(tmp.str,st2.str);

returntmp;

ostream&

os,

String&

str)

{os<

str.str<

returnos;

voidmain(void)

{Stringa("

This"

),b("

C++"

),c(“test.”),d;

d=a+b+c;

d;

9.下面程序中编译有错误的语句的标号为__________(2分)

classD{intx,y;

D(inta,intb=0)

{x=a;

y=b;

"

a"

}//A

D(inta)

{x=a,y=0;

b"

}//B

voidSetXY(inta,intb){x=a,y=b};

//C

intGetX(){returnx;

}//D

intGetY(){returny;

}//E

{Da(3,3);

//F

Db(9);

//G

a.GetX()<

b.GetX()<

其错误原因是:

______________________

10.下面程序依据的数学公式是:

{intx,y;

Inputx:

cin>

>

x;

switch(x/20)

{case1:

y=x+6;

break;

case2:

y=9*x;

break;

case3:

y=x+20;

default:

y=x;

y<

三..根据题目要求完善程序

1.下面是求前n个自然数和的递归函数(2分,即求1+2+3...+n)

intsum(intn)

if(________)return1;

elsereturn_______;

2.下述程序中函数delstr的功能是:

将字符串str中所有出现的子串str1全部删除。

#include<

char*delstr(char*str,char*str1)

{char*p,*p1,*q1;

inti;

if(*str=='

||*str1=='

returnstr;

p=str;

while(*p!

{p1=p,q1=str1;

while(*p1==*q1&

*q1!

_______;

if(p!

=p1&

*q1=='

{for(i=0;

*p1!

i++,p1++)

___=*p1;

_____='

p++;

return___;

charline[80]="

Iamastudent.\

Youareastudenttoo."

delstr(line,"

student"

\n'

3.若一链表,每次插入数据时结点总加在链首(即总是作为第一个结点加入),现有函数Push,完成插入数据x。

链表结点结构如下:

structNode{

intdata;

Node*next;

链表头指针为top,在链空时top为NULL。

试完成下述填空(注:

NULL是C++中的宏定义#defineNULL0,所以NULL等于0)。

voidPush(Node*&

top,intx)

{

Node*p;

p=____;

p->

data=___;

next=__;

__=p;

四.根据要求写出程序

1.平面上的点可用坐标(x,y)表示,试用C++设计一个Point类(4分),

其要求为:

(1)私有数据为点坐标(x,y),用整型数表示;

(2)类对外的接口有:

给定一对整型数(a,b),置点坐标(x,y);

可取坐标x;

可取坐标y;

可从标准输出设备输出对象的坐标;

(3)在定义一个Point类的对象时,可用给定的数据初始化(x,y);

若没有给出初始化数据,则(x,y)为(0,0)。

2.有函数f(n,k)=1k+2k+┅+nk,试写出程序(6分)

要求:

n,k由键盘读入,为方便,n,k及函数的结果用整型。

3.写一函数完成乘法九九表的输出,格式为:

(6分)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2