版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
填空题:1、面向对象语言的特点是(
继承
)、(
抽象
)、(
封装
)和(
多态
)。选择题:1、C++源程序文件的缺省扩展名为(A)。A、cpp B、exe C、obj D、c2、由C++源程序文件编译而成的目标文件的缺省扩展名为(C)。A、class B、exe C、obj D、lik3、由C++目标文件连接而成的可执行文件的缺省扩展名为(B)。A、txt B、exe C、obj D、java4、编写C++程序一般需经过的几个步骤依次是(B)。A、编译、编辑、连接、调试 B、编辑、编译、连接、调试C、编译、调试、编辑、连接 D、编辑、调试、编辑、连接5、C++程序的基本模块为(D)。A、表达式 B、标识符 C、语句 D、函数填空题:1、C++程序由(
注释
)、(
编译预处理
)以及(
程序主体
)三部分组成。2、C++程序有两种注释格式,一种是用符号(/*...*/)括起来,可以占多行;另一种是用符号(
//
),只能占一行。3、一个C++程序可以由若干个函数组成,其中必须且仅有一个叫(
main
)的函数。选择题:1、每个语句和数据定义的最后必须有一个(A),才能表示一个完整的C++语句。A、; B、。 C、! D、//2、以下合法的标识符的是(B)。A、int B、_123 C、ch D、a?nt3、C++语言中,以下表达式不正确的是(C)。A、++y++ B、x=x C、x+1=9 D、x=x+y4、C++语言中,不合法的字符类型(A)。A、’’ B、 ‘a’ C、’1’ D、‘’5、下列表达式(a=2+3,a*5),a+10的结果是(D)。A、75 B、55 C、35 D、156、存储以下数据,占用存储字节最多的是(D)。A、0 B、‘0’ C、“0” D、0、07、下面(D)不是C++的标准数据类型。A、int B、char C、bool D、real8、C++语言是从早期的C语言逐渐发展演变而来的、与C语言相比,它在求解问题方法上进行的最大改进是(B)。A、面向过程 B、面向对象 C、安全性 D、复用性9、设x和y均为bool类型,则x&&y为真的条件是(A)。A、它们均为真 B、其中一个为真 C、它们均为假 D、其中一个为假10、设有inti;则表达式i=1,++i,++i||++i,i的值为(C)。A、1 B、2 C、3 D、4判断题:1、C++是一种以编译方式实现的高级语言。(
√)2、判断:在C++中标识符是不区分大小写字母的。(
×
)3、判断:关键字在C++系统中具有特殊的意义,不能用作其他用途。(
√
)4、判断:自加运算符无论是前缀形式还是后缀形式对运算对象本身来说是没有区别的。(
√
)5、判断:自加、自减运算符的前缀形式在表达式中是先引用后计算。(
×
)6、判断:有如下定义语句inti=1;则i++;的值是1。(
√
)填空题:程序设计的三种基本结构分别是(顺序结构)、(选择结构)和(循环结构)。2、C++中,cin表示输入流采用抽取操作符(
>>
),cout表示输出流采用插入操作符(
<<
)。选择结构细化又可以分为(单分支结构)、(双分支结构)和(多分支结构)。多分支结构的实现可以通过(if语句的嵌套)和(switch语句)。C++语言中循环结构包括(for语句)、(while语句)和(dowhile语句)。选择题:1、下面程序的运行结果为(
C
)。
#include<iostream.h>
voidmain()
{for(inta=0,x=0;!x&&a<=10;a++)
{a++;
}
cout<<a<<endl;
}
A、10
B、11
C、12
D、02、下列选项,不正确的是(
B
)。
A、for(inta=1;a<=10;a++);
B、inta=1;do{
a++:
}while(a<=10)
C、inta=1;while(a<=10){a++;}
D、for(inta=1;a<=10;a++)a++;3、下面关于break语句的描述中,不正确的是(
D
)。
A、break可以用于循环体内
B、break语句可以在for循环语句中出现多次
C、break语句可以在switch语句中出现多次D、break语句可用于if条件判断语句内4、下面程序的运行结果是(
C
)。
#include<iostream.h>
voidmain()
{
inti=1;
while(i<=8)
if(++i%3!=2)continue;
elsecout<<i;
}
A、25
B、36
C、258
D、3695、有以下程序:
#include<iostream.h>
voidmain()
{
inti=0,s=0;
for(;;)
{
if(i==3||i==5)continue;
if(i==6)break;
i++;s+=i;}
cout<<s;
}程序的运行结果为(
D
)。
A、10
B、13
C、21
D、程序进入死循环6、当执行以下程序段时(
A
)。
x=-1;
do(x=x*x;)while(!x);
A、循环体将执行一次
B、循环体将执行两次
循环体将执行无限次
D、系统将提示有语法错误7、C++语言的跳转语句中,对于break和continue说法正确的是(C)。A、break语句只应用与循环体中B、continue语句只应用与循环体中C、break是无条件跳转语句,continue不是D、break和continue的跳转范围不够明确,容易产生问题8、for(intx=0,y=0;!x&&y<=5;y++)语句执行循环的次数是(C)。A、0 B、5 C、6 D、无次数9、有以下程序#include<iostream.h>voidmain(){inti,s=0;for(i=1;i<10;i+=2)s+=i;cout<<s;}执行程序之后的输出结果为(C)。A、自然数1~9的累加和 B、自然数1~10的累加和C、自然数1~9中奇数之和 D、自然数1~10中偶数之和10、下列各运算符中,(B)优先级最高。A、+(双目) B、*(单目) C、<= D、*=11、下列for的循环次数为(B)。for(inti(0),x=0;!x&&i<=5;i++)A、5 B、6 C、1 D、无限12、语句
cout<<(1&2)<<","<<(1&&2)<<endl;
的输出结果是(
B
)。A、0,0
B、0,1
C、1,0
D、1,113、语句
cout<<(1|2)<<","<<(1||2)<<endl;
的输出结果是(
D
)。A、0,0
B、1,1
C、2,0
D、3,114、语句
cout<<(3<<3)<<endl;
的输出结果是(
A)。A、24
B、12
C、9
D、615、语句
cout<<(24>>3)<<endl;
的输出结果是(
D
)。A、12
B、9
C、6
D、316、语句
cout<<(2^5)<<endl;
的输出结果是(
C
)。A、1
B、3
C、7
D、10选择题:1、下面关于数组的描述错误的是(
D
)。A、在c++语言中数组的名字就是指向该数组第一个元素的指针。B、长度为n的数组,下标的范围是0一n-l。C、数组的大小必须在编译时确定。D、.数组只能通过值参数和引用参数两种方式传递给函数。2、下列一维数组定义格式正确的是(
C
)。A、intx[4];y[6];
B、intx=6;floatmin[x];C、doublex,y[8];
D、floatsum[8.6];3、下列对数组元素初始化正确的是(
A
)。A、intx[5]={1,2,3,4};
B、inty[5]={1,2,3,4,5,6};C、inta[5]=1;
D、floatb[5]={1.0;2.0;3.0;4.0;5.0};4、下列二维数组定义格式正确的是(
C
)。A、intx{2,3}
B、floatx[2,3]
C、doublex[2][3]
D、floatx{2}{3}5、下列二维数组元素初始化格式正确的是(
A
)。A、intx[3][4]={1,2,3,4};
B、intx[3][4]={1,1,1,1,1,1,1,1,1,1,1,1,1}C、intx[3][4]={};
D、intx[3][4]={{1,2,3},{4,5,6},{7,8,9},{10,11,12}};6、设有数组定义:chararray[]="China";,则数组array所占的空间为(
C
)。A、4个字节
B、5个字节
C、6个字节
D、7个字节7、下列字符数组初始化正确的是(
A
)。A、chararr[5]="abcd";
B、chararr[5]="abcdef";
C、chararr="abcdef";
D、chararr[5]={abcde};8、在一个用数组实现的队列类中,假定数组长度为MS,队首元素位置为first,队列长度为length,则队尾(即最后一个)元素的位置为(C)。A、length+1B、first+lengthC、(first+length-1)%MSD、(first+length)%MS9、在一个用数组实现的队列类中,假定数组长度为MS,队首元素位置为first,队列长度为length,则队尾的后一个位置为(D)。A、length+1B、first+lengthC、(first+length-1)%MSD、(first+length)%MS10、在一个用数组实现的队列类中,假定数组长度为MS,队首元素位置为first,队列长度为length,则队首的后一个位置为(B)。A、first+1B、(first+1)%MSC、(first-1)%MSD、(first+length)%MS11、有数组定义
doubled[10];
以下叙述不正确的是(
B
)。A、数组d有10个元素
B、数组d的最后一个元素是d[10]C、数组d的第一个元素*d
D、数组d的字节数是sizeof(double)*1012、以下对一维数组a的定义正确的是(
C
)。A、intn=5,a[n];
B、inta(5);C、constintN=5;inta[N];
D、intn;
cin>>n;
inta[n];
13、下列数组定义语句中,不合法的是(
A)。A、inta[3]={0,1,2,3};
B、inta[]={0,1,2};C、inta[3]={0,1,2};
D、inta[3]={0};14、若有定义语句:inta[3][6];按在内存中存放的顺序,a数组的第10个元素是(D)。A、a[0][3] B、a[1][4] C、a[0][4] D、a[1][3]15、以下数组定义中错误的是(B)。A、intx[][3]={0}; B、intx[2][3]={{1,2},{3,4},{5,6}};C、intx[][3]={{1,2,3},{4,5,6}}; D、intx[2][3]={1,2,3,4,5,6};判断题:1、在C++中可以利用字符数组表示字符串。(
√
)2、strcat()函数实现两个字符串的连接,结果中包含两个"\0"。(
×
)选择题:1、说明一个结构体变量时系统分配给它的内存是(A)。A、各成员所需要内存量的总和B、结构体中第一个成员所需内存量C、成员中占内存量最大者所需的容量D、结构中最后一个成员所需内存量2、C++语言结构体类型变量在程序执行期间(A)。A、所有成员一直驻留在内存中B、只有一个成员驻留在内存中C、部分成员驻留在在内存中D、没有成员驻留在内存中3、设有以下说明语句structstu{inta;floatb;}stutype;则下面的叙述不正确的是(C)。A、struct是结构体类型的关键字B、structstu是用户定义的结构体类型C、stutype是用户定义的结构体类型名D、a和b都是结构体成员名4.程序中有下面的说明和定义structabc{intx;chary;}structabcs1,s2;则会发生的情况是(A)。A、编译出错B、程序将顺利编译、连接、执行C、能顺利通过编译、连接、但不能执行D、能顺利通过编译、但连接出错5.有如下定义structperson{charname[9];intage;};structpersonclass[10]={"Johu",17,"Paul",19,"Mary",18,"Adam",16};根据上述定义,能输出字母M的语句是(D)。A、prinft("%c\n",class[3].name); B、printf("%c\n",class[3].name[1]);C、prinft("%c\n",class[2].name[1]); D、printf("%c\n",class[2].name[0]);6.下面程序的输出是(D)。A、0B、1C、3D、6main(){structcmplx{intx;inty;}cnum[2]={1,3,2,7};printf("%d\n",cnum[0].y/cnum[0].x*cnum[1].x);}7.下列程序的输出结果是()。A、5B、6C、7D、8structabc{inta,b,c;};main(){structabcs[2]={{1,2,3},{4,5,6}};intt;t=s[0].a+s[1].b;printf("%d\n",t);}8.设有如下定义:structsk{inta;floatb;}data,*p;若有p=&data;,则对data中的a域的正确引用是()。A、(*p).data.aB、(*p).aC、p->data.aD、p.data.a9.下面程序的输出结果为()。structst{intx;int*y;}*p;intdt[4]={10,20,30,40};structstaa[4]={50,&dt[0],60,&dt[1],70,&dt[2],80,&dt[3]};main(){p=aa;printf("%d\n",++p->x);printf("%d\n",(++p)->x);printf("%d\n",++(*p->y));}A、10B、50C、51D、60206060702021213110.当说明一个共用体变量时系统分配给它的内存是(C)。A、各成员所需要内存量的总和B、共用体中第一个成员所需内存量C、成员中占内存量最大者所需的容量D、共用体中最后一个成员所需内存量11.以下对C++语言中共用体类型数据的叙述正确的是(C)。A、可以对共用体变量名直接赋值B、一个共用体变量中可以同时存放其所有成员C、一个共用体变量中不可以同时存放其所有成员D、共用体类型定义中不能出现结构体类型的成员12.C++语言共用体类型变量在程序运行期间(B)。A、所有成员一直驻留在内存中 B、只有一个成员驻留在内存中C、部分成员驻留在在内存中 D、没有成员驻留在内存中13.字符'0'的ASCII码的十进制数为48,且数组的第0个元素在低位,则以下程序的输出结果是()。#include〈stdio.h〉main(){union{inti[2];longk;charc[4];}r,*s=&r;s->i[0]=0x39;s->i[1]=0x38;printf("%c\n",s->c[0]);}A、39B、9C、38D、814.设有以下定义:#include“alloc.h”typedefunion{longi;intk[5];charc;}DATE;structdate{intcat;DATEcow;doubledog;}too;DATEmax;则下列语句的执行结果是()。printf("%d",sizeof(structdate、+sizeof(max));A、25B、30C、18D、815.设有如下枚举类型定义:enumlanguage{Basic=3,Assembly,Ada=100,COBOL,Fortran};枚举量Fortran的值为(C)。A、4B、7C、102D、10316.下面程序的输出是(4)。A、0123B、04010C、04515D、14515main(){enumteam{my,your=4,his,her=his+10};printf("%d%d%d%d\n",my,your,his,her);}16.以下选项中,能定义s为合法的结构体变量的是(B)。A、typedefstructabcB、struct{doublea;{doublea;charb[10];charb[10];}s;}s;C、structABCD、typedefABC{doublea;{doublea;charb[10];charb[10];}ABCs;}ABCs;17.下面对的叙述中不正确的是(B)。A、用typedef可以定义各种类型名,但不能用来定义变量B、用typedef可以增加新类型C、用typedef只是将已存在的类型用一个新的标识符来代表D、使用typedef有利于程序的通用和移植18.设有以下说明语句typedefstruct{intn;charch[8];}PER;则下面叙述中正确的是(B)。A、PER是结构体变量名 B、PER是结构体类型名C、typedefstruct是结构体类型 D、struct是结构体类型名填空题:1、在C++中文件包含命令为(include),宏定义命令为(define)。2、在C++中宏定义根据参数可以分为(不带参数宏定义)和(带参数宏定义)。3、程序中变量的存储类型包括:(auto)、(static)、(register)和(extern)。4、变量作用域细化,可分为:(块作用域)、(文件作用域)、函数原型作用域、(函数作用域)、类作用域和命名空间作用域。5、在C++语言中,一个函数由函数头和(函数体)组成。6、函数形参的作用域是该函数的(函数体)。7、定义外部变量时,不用存储类说明符(extern),而声明外部变量时用它。8、全局变量和静态局部变量具有静态生存期,存放在内存的(全局数据)区中。9、局部变量具有局部生存期,存放在内存的(栈)区中。判断题:1、在C++语言中,只有标号据有函数作用域,即在一个函数中定义的标号,在其整个函数内均可以引用。(
√
)2、文件包含格式要求所包含的文件必须用一对双引号括起来。(
×
)3、函数的定义与程序设计结构一样允许嵌套定义。(
×
)4、所有C++程序有且仅有一个main()主函数,并且程序总是从main()函数开始启动。(
√
)5、函数体是由一对大括号括起来,主要用来完成数据处理语句的集合,因此在设计程序时要求函数体内必须有语句。(
×
)6、函数返回值return语句后必须跟有表达式或者常量。(
×
)7、一个函数体内允许出现多个return语句,但只能执行一个return语句。(
√
)选择题:1、下列函数定义的函数头格式正确的是(
D)。A、intadd(intx,y)
B、intadd(intx,inty);
C、intadd(x,y)
D、add(intx,inty)2、决定C++语言中函数的返回值类型的是(
D
)。A、return语句中的表达式类型
B、调用该函数时系统随机产生的类型C、调用该函数时的主调用函数类型
D、在定义该函数时所指定的数据类型3、下列程序的输出结果为(D)。
#include<iostream.h>
intfunc(intn)
{
if(n<1)return1;elsereturnn+func(n-1);
return0:
}
voidmain()
{
cout<<func(5)<<endl;
}
A.0
B.10
C.15
D.164、下列程序的输出结果是(
B
)。
#include<iostream.h>
intmin(inta,intB)
{if(a<B)returna;
elseretumB;
retum0;
}
voidmain()
{cout<<min(1,min(2,3))<<endl;
}
A、0
B、1
C、2
D、35、在每个C++程序中都必须包含有这样一个函数,该函数的函数名为(A)。A、main B、MAIN C、name D、function填空题:1、程序运行过程中,为了节约空间有时需要动态申请空间和释放空间,动态申请空间的操作符为(new),释放内存空间的操作符为(delete)。2、当采用new操作符进行动态申请空间时,当内存中没有足够的空间给予分配时,new运算符返回空指针(NULL)。选择题:1、设p和q是指向同一个整型一维数组的指针变量,f为整型变量,则不能正确执行的语句是(
B
)。
A、k=*p+*q
B、q=f
C、p=q
D、k=*p*(*q)2、若有以下说明语句:inta[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b;
b=p[5];则b的值是(
B
)。A、5
B、6
C、8
D、93、下列程序的输出结果为(
B
)。
#include<iostream.h>
voidmain()
{
char*a[]={"hello","the","world"};
char**pa=a;
pa++;
cout<<*pa<<endl;
}A、hello
B、the
C、world
D、hellotheworld4、下面程序的运行结果是(
C
)。
#include<iostream.h>
voidmain()
{
intnum=1;
int&ref=num;
ref=ref+2;
cout<<num;
num=num+3;
cout<<ref<<endl;
}
A、13
B、16
C、36
D、335、用new运算符创建一个含10个元素的一维整型数组的正确语句是(C)。A、int*p=newa[10]; B、int*p=newfloat[10];C、int*p=newint[10]; D、int*p=newint[10]={1,2,3,4,5}6、假定p指向的字符串为”string”,则cout<<p+3的输出结果为(C)。A、string B、ring C、ing D、i7、假定p指向的字符串为”string”,若要输出这个字符串的地址值,则使用(D)。A、cout<<*s; B、cout<<s; C、cout<<&s;D、cout<<(void*)s;8、定义p并使p指向动态空间中的包含30个整数的数组所使用的定义语句为(A)。A、int*p=newint[30]; B、int*p=newint(30);C、int*p=new[30];D、*p=newint[30];9、假定p是具有int**类型的指针变量,则给p赋值的正确语句为(B)。A、p=newint; B、p=newint*;C、p=newint**;D、p=newint[10];10、要使语句“p=newint[10][20];”能够正常执行,p应被事先定义为(D)。A、int*p; B、int**p; C、int*p[20]; D、int(*p)[20];11、假定有“structBOOK{chartitle[40];floatprice;};BOOK*book=newBOOK;”,则正确的语句为(A)。A、strcpy(book->title,”WangTao”); B、strcpy(book、title,”WangTao”);C、strcpy(*book、title,”WangTao”); D、strcpy((*book)->title,”WangTao”);12、假定有“structBOOK{chartitle[40];floatprice;};BOOK*book;”,则不正确的语句为(A)。A、BOOK*x=newbook; B、BOOKx={"C++Programming",27、0};C、BOOK*x=newBOOK; D、BOOK*x=book;13、假定有“structBOOK{chartitle[40];floatprice;}book;”,则正确的语句为(B)。A、BOOK&x=&book; B、BOOK&x=book;C、BOOK&x=newBOOK; D、BOOK&x=BOOK;14、假定指针变量p定义为“int*p=newint(100);”,要释放p所指向的动态内存,应使用语句(A)。A、deletep; B、delete*p; C、delete&p; D、delete[]p;15、假定指针变量p定义为“int*p=newint[30];”,要释放p所指向的动态内存,应使用语句(D)。A、deletep; B、delete*p; C、delete&p; D、delete[]p;选择题:1、类MyClass的定义如下:classMyClass{
public:
MyClass(){value=0;}
SetVariable(inti){value=i;}private:
intvalue;}
则对下列语句序列:MyClass*p,my;
p=&my;正确的描述是(
D
)。A、语句p=&my;是把对象my赋值给指针变量pB、语句MyClass*p,my;会调用两次类MyClass的构造函数C、对语句*p.SetVariable(5)的调用是正确的D、语句p->SetVariable(5)与语句my.SetVariable(5)等价2、下面关于类和对象的描述中,错误的是(A)。A、类就是c语言中的结构体类型,对象就是C语言中的结构体变量B、类和对象之间的关系是抽象和具体的关系C、对象是类的实例,一个对象必须属于一个已知的类D、
类是具有共同行为的若干对象的统一描述体3、对类的构造函数和析构函数描述正确的是(
B
)。A、构造函数不能重载,析构函数可以重载
B、构造函数可以重载,析构函数不能重载C、构造函数可以重载,析构函数也可以重载D、构造函数不能重载,析构函数也不能重载4、类的析构函数的作用是(
D
)。A、一般成员函数的初始化
B、类的初始化C、对象的初始化
D、对象生存器结束时作些清理工作5、关于析构函数的说法中,正确的是(
A
)。A、一个类中只能定义一个析构函数
B、析构函数名与类名不同
C、析构函数的定义只能在类体内
D、析构函数可以有一个或多个参数6、一个类的友元函数或友元类能够通过成员操作符访问该类的(
B
)。A、私有成员
B、所有成员
C、公用成员
D、保护成员7、下面对于友元函数描述正确的是(C)。A、友元函数的实现必须在类的内部定义
B、友元函数是类的成员函数C、友元函数破坏了类的封装性和隐藏性
D、友元函数不能访问类的私有成员8、如果类A被说明成类B的友元,则(D)。A、类A的成员即类B的成员
B、类B的成员即类A的成员C、类A的成员函数不得访问类B的成员
D、类B不一定是类A的友元9、下列关于构造函数说法不正确的是(
C
)。A、构造函数必须与类同名
B、构造函数可以省略不写C、构造函数必须有返回值
D、在构造函数中可以对类中的成员进行初始化10、以下叙述不是构造函数的特征的是(
D
)。A、构造函数的函数名与类名相同
B、构造函数可以重载C、构造函数可以设置缺省参数
D、构造函数必须指定类型说明11、C++语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是(B)。A、面向过程 B、面向对象 C、安全性 D、复用性12、下列关于构造函数的描述中,错误的是(D)。A、构造函数可以设置默认参数 B、构造函数在定义类对象时自动执行C、构造函数可以是内联函数 D、构造函数不可以重载13、考虑函数原型voidtest(inta,intb=7,char="*"、,下面的函数调用中,属于不合法调用的是(C)。A、test(5、; B、test(5,8、; C、test(6,"#"、 D、test(0,0."*"、;14、关于消息,下列说法中不正确的是(B)。A、发送消息的对象请求服务,接受消息的对象提供服务B、消息的发送者必须了解消息的接收者如何相应消息C、在C++中,消息的发送具体体现为对接收消息的对象的某个函数的调用D、每个对象只能接收某些特定格式的消息15、关于封装,下列说法中不正确的是(D)。A、通过封装,对象的全部属性和操作结合在一起,形成一个整体B、通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)C、通过封装,每个对象都成为相对独立的实体D、通过封装,对象的属性都是不可见的16、面向对象方法的多态性是指(C)。A、一个类可以派生出多个特殊类B、一个对象在不同的运行环境中可以有不同的变体C、针对一消息,不同的对象可以以适合自身的方式加以响应D、一个对象可以是由多个其他对象组合而成的17、软件产品在需求发生变化、运行环境发生变化或发现软件产品本身的错误或不足时进行相应的软件更新的难易程度叫做软件的(A)。A、可维护性B、可复用性C、兼容性D、正确性18、软件产品可被全部或部分地再用于新的应用的能力叫做软件的(B)。A、可维护性B、可复用性C、兼容性D、正确性19、软件产品与其他软件产品组合成一个整体的难易程度叫做软件的(C)。A、可维护性B、可复用性C、兼容性D、正确性20、软件产品准确执行软件需求规格说明书中所规定的任务的能力叫做软件的(D)。A、可维护性B、可复用性C、兼容性D、正确性21、面向对象软件开发中使用的OOA表示(A)。A、面向对象分析B、面向对象设计C、面向对象语言D、面向对象方法22、面向对象软件开发中使用的OOD表示(B)。A、面向对象分析B、面向对象设计C、面向对象语言D、面向对象方法23、关于面向对象系统分析,下列说法中不正确的是(B)。A、术语“面向对象分析”可以用缩写OOA表示B、面向对象分析阶段对问题域的描述比实现阶段更详细C、面向对象分析包括问题域分析和应用分析两个步骤D、面向对象分析需要识别对象的内部和外部特征24、在一个类的定义中,包含有(C)成员的定义。A、数据 B、函数 C、数据和函数D、数据或函数25、在类作用域中能够通过直接使用该类的(D)成员名进行访问。A、私有 B、公用 C、保护D、任何26、在关键字public后面定义的成员为类的(B)成员。A、私有 B、公用 C、保护 D、任何27、在关键字private后面定义的成员为类的(A)成员。A、私有 B、公用 C、保护 D、任何28、假定AA为一个类,a为该类公有的数据成员,x为该类的一个对象,则访问x对象中数据成员a的格式为(D)。A、x(a) B、x[a] C、x->a D、x.a29、假定AA为一个类,a()为该类公有的函数成员,x为该类的一个对象,则访问x对象中函数成员a()的格式为(B)。A、x.a B、x.a() C、x->a D、x->a()30、假定AA为一个类,a为该类公有的数据成员,px为指向该类对象的一个指针,则访问px所指对象中数据成员a的格式为(C)。A、px(a) B、px[a] C、px->a D、px.a31、假定AA为一个类,a为该类私有的数据成员,GetValue()为该类公有函数成员,它返回a的值,x为该类的一个对象,则访问x对象中数据成员a的格式为(D)。A、x.a B、x.a() C、x->GetValue()D、x.GetValue()32、假定AA为一个类,inta()为该类的一个成员函数,若该成员函数在类定义体外定义,则函数头为(A)。A、intAA::a() B、intAA:a()C、AA::a()D、AA::inta()33、假定AA为一个类,a为该类公有的数据成员,若要在该类的一个成员函数中访问它,则书写格式为(A)。A、a B、AA::a C、a() D、AA::a()34、对于一个类的构造函数,其函数名与类名(A)。A、完全相同 B、基本相同C、不相同 D、无关系35、对于一个类的析构函数,其函数名与类名(C)。A、完全相同 B、完全不同C、只相差一个字符D、无关系36、类的构造函数是在定义该类的一个(C)时被自动调用执行的。A、成员函数 B、数据成员C、对象 D、友元函数37、类的析构函数是一个对象被(B)时自动调用的。A、建立 B、撤消 C、赋值 D、引用38、一个类的构造函数通常被定义为该类的(A)成员。A、公用 B、保护 C、私有 D、友元39、一个类的析构函数通常被定义为该类的(C)成员。A、私有 B、保护 C、公用 D、友元40、假定AB为一个类,则执行“ABx;”语句时将自动调用该类的(B)。A、带参构造函数 B、无参构造函数 C、拷贝构造函数 D、赋值重载函数41、假定AB为一个类,则执行“ABx(a,5);”语句时将自动调用该类的(A)。A、带参构造函数 B、无参构造函数C、拷贝构造函数 D、赋值重载函数42、假定AB为一个类,则执行“AB*s=newAB(a,5);”语句时得到的一个动态对象为(D)。A、s B、s->a C、s.a D、*s43、假定AB为一个类,则执行“ABr1=r2;”语句时将自动调用该类的(D)。A、无参构造函数B、带参构造函数C、赋值重载函数D、拷贝构造函数44、若需要使类中的一个指针成员指向一块动态存储空间,则通常在(B)函数中完成。A、析构 B、构造 C、任一成员 D、友元45、当类中的一个整型指针成员指向一块具有n*sizeof(int)大小的存储空间时,它最多能够存储(A)个整数。A、n B、n+1 C、n-1 D、146、假定一个类的构造函数为“A(intaa,intbb){a=aa;b=aa*bb;}”,则执行“Ax(4,5);”语句后,x.a和x.b的值分别为(C)。A、4和5 B、5和4 C、4和20 D、20和547、假定一个类的构造函数为“A(intaa=1,intbb=0){a=aa;b=bb;}”,则执行“Ax(4);”语句后,x.a和x.b的值分别为(D)。A、1和0 B、1和4 C、4和1 D、4和048、假定AB为一个类,则(B)为该类的拷贝构造函数的原型说明。A、AB(ABx); B、AB(AB&x);C、voidAB(AB&x);D、AB(intx);49、假定一个类的构造函数为“B(intax,intbx):a(ax),b(bx){}”,执行“Bx(1,2),y(3,4);x=y;”语句序列后x.a的值为(C)。A、1 B、2 C、3 D、450、假定一个类AB只含有一个整型数据成员a,当用户不定义任何构造函数时,系统为该类定义的无参构造函数为(D)。A、AB(){a=0;} B、AB(intaa=0):a(aa){}C、AB(intaa):a(aa){} D、AB(){}51、假定一个类AB只含有一个整型数据成员a,用户为该类定义的带参构造函数可以为(C)。A、AB(){} B、AB():a(0){}C、AB(intaa=0){a=aa;} D、AB(intaa){}52、对于任一个类,用户所能定义的构造函数的个数至多为(D)。A、0 B、1 C、2 D、任意个53、对于任一个类,用户所能定义的析构函数的个数至多为(B)。A、0 B、1 C、2 D、任意个54、假定AB为一个类,则执行“AB*px=newAB[n];”语句时将(A)。A、动态分配一个数组B、动态分配一个对象C、静态分配一个数组D、静态分配一个对象55、设px是指向一个类对象的指针变量,则执行“deletepx;”语句时,将自动调用该类的(C)。A、无参构造函数B、带参构造函数C、析构函数D、拷贝构造函数56、当一个类对象离开它的作用域时,系统自动调用该类的(D)。A、无参构造函数B、带参构造函数C、拷贝构造函数D、析构函数57、假定一个类对象数组为A[n],当离开它定义的作用域时,系统自动调用该类析构函数的次数为(C)。A、0 B、1 C、n D、n-158、假定AB为一个类,则执行“ABa[10];”语句时调用该类无参构造函数的次数为(D)。A、0 B、1 C、9 D、1059、假定AB为一个类,则执行“AB*px=newAB[n];”语句时调用该类无参构造函数的次数为(A)。A、n B、n-1 C、1 D、060、假定AB为一个类,则执行“ABa,b(3),*p;”语句时共调用该类构造函数的次数为(A)。A、2 B、3 C、4 D、561、假定AB为一个类,则执行“ABa(2),b[3],*p[4];”语句时共调用该类构造函数的次数为(B)。A、3 B、4 C、5 D、962、假定AB为一个类,则执行“ABa,b(2),c[3],*p=&a;”语句时共调用该类无参构造函数的次数为(D)。A、5 B、6 C、3 D、463、假定AB为一个类,则执行“AB*p=newAB(1,2);”语句时共调用该类构造函数的次数为(B)。A、0 B、1 C、2 D、364、假定AB为一个类,px为指向该类的一个含有n个对象的动态数组的指针,则执行“delete[]px;”语句时共调用该类析构函数的次数为(C)。A、0 B、1 C、n D、n+165、对类对象成员的初始化是通过构造函数中给出的(B)实现的。A、函数体B、初始化表C、参数表D、初始化表或函数体66、对类中常量成员的初始化是通过构造函数中给出的(C)实现的。A、函数体B、参数表C、初始化表
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年山东曲阜师范大学招聘工作人员49人历年管理单位笔试遴选500模拟题附带答案详解
- 2025年山东日照市五莲县水务集团限公司招聘26人管理单位笔试遴选500模拟题附带答案详解
- 直流减速电机课程设计
- 焊接结构课程设计指导
- 师徒结对发言稿范文400字(10篇)
- 2025年山东威海火炬高技术产业开发区事业单位招聘9人历年管理单位笔试遴选500模拟题附带答案详解
- 年会精彩发言稿
- 会计实习日记范文七篇
- 2025年山东东营市市属事业单位招聘工作人员65人历年管理单位笔试遴选500模拟题附带答案详解
- 2025年宣城市泾县城市管理行政执法局招考管理单位笔试遴选500模拟题附带答案详解
- 检验检测服务公司市场研究与市场营销方案
- 产品外观检验标准(通用)
- 股东协议明确约定投资人不参与经营管理
- 丹麦门萨权威IQ测试(附参考答案)
- 电气试验110kV交接试验细则
- 外立面装修改造工程施工方案(79页)
- 汽车吊接地比压计算
- 跨国公司财务管理课后习题答案
- 人教版(2019)高一物理必修第三册 13.5能量量子化 课件(共18张PPT)
- 沟槽管件尺寸对照表
- 美术教案雄伟的塔教学反思
评论
0/150
提交评论