C考试样卷4讲解Word文档格式.docx

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

C考试样卷4讲解Word文档格式.docx

《C考试样卷4讲解Word文档格式.docx》由会员分享,可在线阅读,更多相关《C考试样卷4讲解Word文档格式.docx(18页珍藏版)》请在冰点文库上搜索。

C考试样卷4讲解Word文档格式.docx

11、#include<

iostream.h>

inta=3;

intf(int);

voidmain()

{inta=5;

f(a);

cout<

<

"

a="

<

a<

endl;

}

voidf(intb)

{

b=4;

a+=b;

程序的输出结果是[11]

A)3B)5C)7D)9

12、以下程序运行结果是[12]。

#include<

voidmain(){

intx=1,y=0,a=0,b=0;

switch(x)

{case1:

switch(y)

{case0:

a++;

break;

case1:

b++;

}

case2:

a++;

cout<

a<

”,”<

b;

A)2,1B)1,2C)1,1D)0,0

13、执行下列程序段时,输出[15]。

ints1=0,s2=0,s3=0,s4=0;

for(intt=1;

t<

=4;

t++)

switch(t)

case4:

s1++;

case3:

s2++;

case2:

s3++;

default:

s4++;

cout<

s1<

”,”<

s2<

s3<

s4<

A)语法出错B)1,1,1,2C)1,2,3,2D)1,1,2,2

14、下列说法正确的是:

[13]。

A)一个类的对象可以是另一个类的成员

B)一个类可以作为另一个类的派生类

C) 

一个类定义在另一个类的说明中

D) 

以上说法均正确

15、类MyClass的定义如下:

classMyClass

public:

MyClass(){value=0;

SetValue(inti){value=i;

private:

intvalue;

};

则对语句:

MyClass*p,my;

p=&

my;

正确的描述是[14]。

A) 

语句p=&

是把对象my赋值给指针变量p;

B) 

语句MyClass*p,my;

会调用两次类MyClass的构造函数

对语句*p.SetValue(5)的调用是正确的

语句p->

SetValue(5)与my.SetValue(5)等价

16、下列各类函数中,不是类的成员函数。

A)构造函数B)析构函数C)友元函数D)拷贝构造函数

17、派生类的对象对它的基类成员中是可以访问的。

A)公有继承的公有成员

B)公有继承的私有成员

C)公有继承的保护成员

D)私有继承的公有成员

18、有关析构函数的说法不正确的是。

A)析构函数有且只有一个

B)析构函数无任何函数类型

C)析构函数和构造函数一样可以有形参

D)析构函数的作用是在对象被撤销时收回先前分配的内存空间

19、通常拷贝构造函数的参数是。

A)某个对象名

B)某个对象的成员名

C)某个对象的引用名

D)某个对象的指针名

20、若类A和类B的定义如下:

classA

{inti,j;

voidget();

}

classB:

A

{intk;

voidmake();

voidB:

:

make()

{

k=i*j;

则上述定义中,是非法的表达式。

A)voidget();

B)intk;

C)voidmake();

D)k=i*j;

二、填空题(每空1分,共20分)

1、数学式子x2+y2写成C++语言表达式是[1]。

2、如果a=1,b=2,c=3,d=4,则条件表达式a<

b?

a:

c<

d?

c:

d的值为[2]。

3、设有函数定义:

intf1(void){return100,200;

},调用f1时,函数返回值为[3]。

4、C++使用cin和cout进行输入输出操作的程序必须包含头文件[4],其语句形式为[5]。

5、用C++表达式描述命题“a与b中有一个小于c”:

[6]。

6、函数调用语句fun(a+b,(x,y),fun(n+k,d,(a,b)))中实参的个数为[7]。

7、定义内联函数所用的关键字[8],定义友元所用的关键字为[9]。

8、执行常量定义语句constintsize=100*sizeof(int);

后,符号常量size的值为[10]。

9、设m=1,n=2,则表达式m++==n和++m==n的值分别为[11]和[12]。

10、任何类中允许有[13]、[14]、[15]三种类型的数据,数据和成员函数的默认类型为[16]。

11、C++支持面向对象程序设计的四个要素是:

封装性、继承和派生、[17]和[18]。

12、若Queue是一个类,aQueue是它的一个对象,而且该类中定义了一个静态成员函数show()则在类外对该成员的函数进行调用的方式可以为[19]和[20]。

三、阅读程序,写出程序运行结果(第[3]、[10]空为3分,其余每空1分,共20分)

1、写出下列程序的运行结果

classCSample

{public:

CSample();

voidDisplay();

private:

inti;

staticintk;

};

Csmaple:

CSample()

{i=0;

k++;

voidCSample:

Display()

{cout<

”i=”<

i<

”k=”<

k<

intCSample:

k=0;

voidmain()

{CSamplea,b;

a.Display();

b.Display();

程序的输出结果为[1]

[2]。

2、#include<

voidsplitfloat(floatx,int*p1,float*p2)

*p1=(int)x;

*p2=x-*p1;

intn;

floatx,f;

cin>

>

x;

splitfloat(x,&

n,&

f);

cout<

”n=”<

n<

”f=”<

f<

输入3.1415,输出结果为________[3]________

3、#include<

intnextStudentID=0;

classStudentID

{public:

StudentID(intid=0)

{value=id;

“Assigningstudentid:

”<

value<

~StudentID()

{--nextStudentID;

“DestructingID:

}

protected:

classstudent

student(char*pName=“noname”,intssID=0):

id(ssID)

{cout<

“Constructingstudent:

pname<

StudentIDid;

{students(“Randy”,9818);

studentt(“Jenny”,9819);

输出结果为____[4]___________

[5]

[6]

[7]

[8]

[9]。

4、#include<

classB

B(){};

B(inti,intj);

voidprintb();

inta,b;

classA

A(){};

A(inti,intj);

voidprinta();

Bc;

A:

A(inti,intj):

c(i,j)

{};

voidA:

printa()

{c.printb();

B:

B(inti,intj)

{a=i;

b=j;

voidB:

printb()

{cout<

”a=”<

”b=”<

b<

Am(7,8);

m.printa();

输出结果为_____[10]__________

5、#include<

B();

B(inti);

~B();

voidPrint();

intb;

B()

{b=0;

"

B'

sdefaultconstructorcalled."

B(inti)

{b=i;

sconstructorcalled."

~B()

sdestructorcalled."

Print()

classC:

publicB

C();

C(inti,intj);

~C();

intc;

C:

C()

{c=0;

C'

C(inti,intj):

B(i)

{c=j;

~C()

voidC:

Print()

{B:

Print();

{Cobj(5,6);

obj.Print();

输出结果为_____[11]__________

[12]

[13]

[14]

[15]

[16]

四、改错题:

指出下列程序的错误,并说明原因(每错2分,共10分)

1、#include<

classA{

public:

voidA(inti=0){m=i;

voidshow(){cout<

m;

void~A(){}

intm;

Aa(5);

a.m+=10;

a.show();

________[1]________________[2]________________[3]________

2、#include<

voidsetA(int);

voidshowA();

inta;

voidsetB(int);

voidshowB();

classC:

publicA,privateB

voidsetC(int,int,int);

voidshowC();

setA(intx)

{a=x;

setB(intx)

{b=x;

setC(intx,inty,intz)

{SetA(x);

SetB(y);

c=z;

intmain()

{Cobj;

obj.setA(5);

obj.showA();

obj.setC(6,7,9);

obj.showC();

obj.setB(6);

obj.showB();

return0;

________[4]________________[5]________

五、程序填空:

(每空2分,共10分)

1、下面程序的功能是:

从键盘上输入若干个整数按升序排序后输出;

#include“iostream.h”

voidsort(inta[],intn)

{for(inti=0;

n-1;

i++)

for(intj=i+1;

j<

n;

j++)

if([1]){intt=a[i];

a[i]=a[j];

a[j]=t;

voidInput(int*p,intn)

“输入”<

”个整数。

for(inti=0;

i++)cin>

[2];

voidOutput(int*p,intn)

i++)cout<

[3]<

’/t’;

voidmain(void)

{intx[200],intnum;

”输入安排序数的个数:

”;

cin>

num;

Input(x,num);

Sort(x,num);

Output(x,num);

2、下列程序的功能是:

从堆中获取一个整数数组,赋值并打印。

alloc.h>

{intarraysize;

//定义元素个数

int*array;

“pleaseinputanumberofarray:

arraysize;

if(array=[4])==Null)

“Can’tallocatemorememory!

exit

(1);

for(intcount=0;

count<

count++)

array[count]=count*2;

array[count]<

“”;

[5];

六、编写下面问题的C++程序(每题10分,共20分)

1、 

建立一个ARRAY类,求一维数组中各元素的最大值、最小值和平均值。

要求如下:

(1) 

私有成员:

● 

intdata[10]:

数组名称

intmax:

元素的最大值

intmin:

元素的最小值

floataverage:

各元素的平均值

(2) 

公有成员:

构造函数ARRAY(inta[10]):

初始化成员数组

voidprocess():

求data数组中的最大值、最小值和平均值

voidprint():

输出数组中元素的最大值、最小值和平均值

(3) 

在主程序中进行该类的测试。

2、编写一个学生和教师数据输入和显示程序,学生数据要求有编号、姓名、班号和成绩,教师数据有编号、姓名、职称和部门。

要求将编号、姓名的输入和显示设计成一个类person,并作为学生数据操作类student和教师数据操作类teacher的基类,学生数据中的班号和成绩的输入和显示在student类中实现,教师数据中的职称和部门的输入和显示在teacher类中实现。

最后在主函数中进行该类的测试。

下面给出了基类person的主要成员:

intno;

编号

charname[10];

姓名

voidinput();

编号和姓名的输入

voiddisplay();

编号和姓名的显示

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

当前位置:首页 > 解决方案 > 学习计划

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

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