版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE1一、单选题1.有如下程序段:执行这个程序段后输出字符*的个数是________。inti=1;while(1){i++;if(i==30)break;if(i%3==0)coutA、10B、8C、9D、30答案:C2.以下字符数组的初始化后不能将s看作字符串处理的是________。A、chars[5]={'A','B','\0','D','E'};B、chars[5]={'A','B','C','D'};C、chars[5]={'A','B','C','D','E'};D、chars[5]=“ABCD”;答案:C3.下列排序算法中不稳定的是A、冒泡排序B、折半插入排序C、快速排序D、以上都是稳定的答案:C4.下列有关重载函数的说法中错误的是()A、重载函数必须具有不同的返回值类型B、重载函数名必须相同C、重载函数参数个数可以不同D、重载函数必须有不同的形参列表答案:A解析:函数重载,是指在程序的同一范围内声明几个功能类似的同名函数。在调用同名函数时,实现函数的重载必须满足下列条件之一:1)参数表中对应的参数类型不同。2)参数表中参数个数不同。如果两个函数的名字和参数表都是一样的,仅仅是返回值类型不同,则这两个函数不是重载的,编译器认为它们是重复定义,编译时会报错。故本题选A。5.在定义inta[2][3];之后,对a的元素正确引用的有________。A、a[2][2]B、a[1,3]C、a[1>2][!1]D、a[2][0]答案:C6.下列程序的输出结果是()复制代码#include<iostream>Usingnamespacestd;Intmain(void){Intx=1,i=1;For(;x<50;i++){If(x>=10)Break;If(x%2!=0){X+=3;Continue;}X-=-1;}Cout<<x<<''<<i<<endl;Return0;}A、127B、116C、126D、117答案:C7.递归函数最终会结束,那么这个函数一定A、使用局部变量B、有一个分支不调用自身C、使用了全局变量或者使用了一个或者多个参数D、没有虚幻调用答案:B8.下列虚基类的声明中正确的是()。A、classvirtualB:publicAB、virtualclassB:publicAC、classB:publicAvirtualD、classB:virtualpublicA答案:D9.C++中注释“/*”的有效范围是()A、从“/*”开始到行尾B、从“/*”开始后不终止C、从“/*”开始到“//”为止D、从“/*”开始到“*/”为止答案:D解析:C++程序中,仍沿用C语言的注释风格,即注释有以下两种形式。1)从/*开始,到*/结束,这之间的所有内容都视作注释。故本题选D。2)从//直到行尾,都是注释。10.执行语句for(inti=50;i>1;--i)cout<<"$";后,输出字符'$'的个数为________。A、48B、49C、50D、51答案:B11.下列哪一个语句是不正确的:()A、if(a=0);B、;C、intA,b=0;D、cout>>"HI";答案:D12.以下哪种类型是C++比C语言新增的数据类型(题)A、整型(int)B、布尔类型(bool)C、指针类型(*)D、字符类型(char)答案:B13.C++语言中,函数返回值的类型是由()决定。A、主调函数的类型B、return语句中表达式的类型C、由系统临时指定D、定义该函数时所指定的函数类型答案:D14.C++输入输出格式控制是在哪个头文件中定义的?()A、iostream.hB、iomanip.hC、istream.hD、ostream.h答案:A15.以下正确的说法是()A、结构体类型变量不能初始化。B、结构体类型变量为外部变量或静态变量时能初始化。C、结构体数组不能初始化D、可以用赋值语句将一组常量赋给一个结构体变量答案:B16.有如下程序:classTest{public:inta;Test(inti):a(i){}Test(Test&t){A=t.a;Cout<<“拷贝构造函数”<<endl;}};Voidmain(){Testobj1(10);Testobj2=obj1;Testobj3(obj1);}请问程序输出的结果为:()A、拷贝构造函数B、拷贝构造函数拷贝构造函数C、1010D、无任何输出内容答案:B17.以下关于内存泄漏说法正确的是()A、如果一个进程在运行过程中占用的内存无限制上升,那么该进程可能有内存泄漏B、单线程程序不可能内存泄漏C、内存泄漏是操作系统内存管理出错导致的问题D、只要进程在退出之前释放了所有分配的内存,那么就不会内存泄漏答案:A解析:A:内存泄露是进程申请了内存却没有释放。导致占用内存无限上升B:内存泄露跟线程数无关C:内存泄露是程序设计的bug,不是操作系统的问题D:进程退出之前释放申请的内存,不代表进程运行过程中没有内存泄露E:java是自动管理内存的,但是也会有内存泄露,比如加入HashMap的对象hash值改变了就无法从HashMap中remove,这就造成了内存泄露18.结构化程序设计所规定的三种基本控制结构是()。A、输入、处理、输出B、树形、网形、环形C、顺序、选择、循环D、主程序、子程序、函数答案:C19.以下叙述不正确的是()A、在不同的函数中可以使用同名的变量B、函数中的形式参数是局部变量C、在函数内定义的变量只在本函数范围内有效D、在函数内复合语句中定义的变量也可在本函数范围内有效答案:D20.以下4个选项中,不能看作一条语句的是()。A、if(b==0)m=1;n=2B、a=0,b=0,c=0C、if(a>0)D、{;}答案:B21.假设已经定义好了类student,现在要定义类derived,它是从student私有派生的,则定义类derived的正确写法是()A、classderived::studentprivate{//,,,,.}B、classderived::studentpublic{//,,,,.}C、classderived::publicstudent{//,,,,.}D、classderived::privatestudent{//,,,,.}答案:D22.已知intx=5,y=5,z=5;执行语句x%=y+z;后,x的值是()。A、0B、5C、6D、1答案:B23.结构化程序设计所规定的3种基本控制结构是()。A、输入、处理、输出B、树形、网形、环形C、顺序、选择、循环D、主程序、子程序、函数答案:C24.在下列运算符中,()优先级最低。A、!B、&&C、!=D、?:答案:D25.有以下语句定义intx=5;constint*constp=&x;constint&q=x;intconst*next=&x;constint*j=&x;则有语法正确的是()A、*p=1;B、q++;C、next++;D、(*j)++;答案:C26.从一个栈顶指针为HS的链栈中删除一个结点,用x保存被删除结点的值,则执行A、x=HS;HS=HS->next;B、HS=HS->next;x=HS->data;C、x=HS->data;HS=HS->next;D、s->next=Hs;Hs=HS->next;答案:C27.下列有关内联函数叙述中,错误的是________。A、内联函数内不可以有循环语句和开关语句B、使用内联函数是以空间换取时间的C、内联函数降低了函数的执行效率D、内联函数的定义必须出现在内联函数第一次被调用之前答案:C28.下列程序的输出结果为________。#includeusingnamespacestd;intmain(){enumcolor{red,yellow,blue=4,green,white}c1,c2;c1=yellow;c2=white;cout<A、1,6B、2,5C、1,4D、2,6答案:A29.在一个有参函数的原型声明中可有可无的语法成分是()。A、形参类型B、形参变量C、函数名D、函数返回类型答案:B30.在一棵高度为h的具有n个元素的二叉搜索树中,搜索所有元素的搜索长度中最大的为A、nB、log2nC、(h+1)/2D、h+1答案:D31.下列排序算法中,已基本有序却反而变得更复杂的排序算法是:()。A、冒泡排序B、快速排序C、简择排序D、插入排序答案:B32.函数参数的默认值不允许为()。A、全局常量B、直接常量C、局部变量D、函数调用答案:C33.表示一个语句是宏定义语句的标识符是()。A、includeB、#includeC、defineD、#define答案:D34.已知有如下定义:structDate{intyear,month,day;};structstudent{intnum;charname[80];Datebirthday;};则下列语句错误的是________。A、studentstud[2]={1,"Wangli",2001,12,3,4,"Zhangmei",2001,9,4};B、studentstud[2]={1,"Wangli",{2001,12,3},4,"Zhangmei",{2001,9,4}};C、studentstud[2]={1,"Wangli",2001,12,4,"Zhangmei",2001,9,4};D、studentstud[2]={1,"Wangli",{2001,12},4,"Zhangmei",{2001,9,4}};答案:C35.已知:shorta=1;则表达式sizeof(a+'a')的值为()。A、1B、2C、4D、8答案:C36.在一个函数中,要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用()。A、内联函数B、重载函数C、递归调用D、嵌套调用答案:A37.对类中声明的变量,下列描述中正确的是()A、属于全局变量B、只属于该类C、属于该类,某些情况下也可被该类不同实例所共享D、任何情况下都可被该类所有实例共享答案:C38.能实现删除文件数据的语句是()。A、ofstreamfs(“date.dat“,ios::trunc);B、ifstreamfs(“date.dat“,ios::trunc);C、ofstreamfs(“date.dat“,ios::out);D、ifstreamfs(“date.dat“,ios::in);答案:A39.对于语句cout<<endl<<x;中的各个组成部分,下列叙述中错误的是()。A、”cout”是一个输出流对象B、”endl”的作用是输出回车换行C、”x”是一个变量D、”<<”称作提取运算符答案:D40.下面的变量说明中()是正确的。A、char:a,B,c;B、charA,B,c;C、charA,B,c。D、chara;b;c;答案:B41.下列选项中,用于清除基数格式位设置以十六进制输出的语句是()。A、cout<<setf(ios::dec,ios::basefield);B、cout<<setf(ios::hex,ios::basefield);C、cout<<setf(ios::oct,ios::basefield);D、cin>>setf(ios::hex,ios::basefield);答案:B42.执行语句序列Inti=0;while(i<25)i+=3;cout<<i;输出结果是()。A、24B、25C、27D、28答案:C43.下面程序的输出结果是()#includeusingnamespacestd;voidfun(intx,inty,intz){z=x*x+y*y;}intmain(){intz=68;fun(5,2,z);coutA、0B、29C、68D、无定值答案:C44.下列数组定义语句中,不合法的是()。A、inta[3]={0,1,2,3};B、inta[]={0,1,2};C、inta[3]={0,1,2};D、inta[3]={0};答案:A45.有如下4个语句:①cout<<'A'<<setfill('*')<<setiosflags(ios::left)<<setw(7)<<'B'<<endl;②cout<<setfill('*')<<setiosflags(ios::left)<<setw(7)<<'A'<<'B'<<endl;③cout<<'A'<<setfill('*')<<setiosflags(ios::right)<<setw(7)<<'B'<<endl;④cout<<setfill('*')<<setiosflags(ios::right)<<setw(7)<<'A'<<'B'<<endl;其中能显示A******B是()。(题)A、②和④B、①和③C、①和④D、②和③答案:D46.如果调用带有默认参数的函数时缺少一个参数,则()参数就作为这一参数。A、第一个B、最后一个C、中间一个D、以上都不是答案:B47.派生类的对象对它的基类成员中()是可以访问的。A、公有继承的公有成员;B、公有继承的私有成员;C、公有继承的保护成员;D、私有继承的公有成员。答案:A48.字面常量42、4.2、42L的数据类型分别是()。(题)A、int、double、longB、long、double、intC、long、float、intD、int、float、long答案:A49.有以下程序:#include<iostream>Usingnamespacestd;Voidmain(){Chara='A',b;Cout<<++a;Cout<<(b=a++)<<endl;}程序运行后的输出结果是_____。(题)A、BBB、BCC、ACD、AB答案:A50.C++输入输出格式控制是在哪个头文件中定义的?()A、iostream.hB、iomanip.hC、istream.hD、ostream.h答案:A51.下列各组类型声明符中,含义相同的一组是()。(题)A、signedshortint和shortB、unsignedlongint和longC、unsignedshort和shortD、shortint和int答案:A52.下列关于函数的描述中,错误的是()。A、函数可以没有返回值B、函数可以没有参数C、函数可以是一个类的成员D、函数不能被定义为模板答案:D53.对于类中定义的成员,不设置访问权限,默认的访问权限为()。A、publicB、protectedC、privateD、static答案:C54.在单链表中,存储每个结点需要有两个域,一个是数据域,另一个是指针域,指针域指向该结点的()A、直接前趋B、直接后继C、开始结点D、终端结点答案:B55.有以下程序Floatfun(intx,inty){return(x+y);}Intmain(){inta=2,b=5,c=8;Cout<<fun((int)fun(a+c,b),a-c)<<endl;Return0;}程序运行后的输出结果是()。A、编译出错B、9C、21D、9.0答案:B56.以下程序的输出结果是()。F(intb[],intm,intn){Inti,s=0;For(i=m;i<n;i=i+2)s=s+b[i];Returns;}Main(){Intx,a[]={1,2,3,4,5,6,7,8,9};X=f(a,3,7);Printf(""%d\n"",x);}"A、10B、18C、8D、15答案:A57.有如下程序段:inti=1;while(1){i++;if(i==10)break;if(i%2==0)cout<<'*';}执行这个程序段输出字符*的个数是()。A、10B、3C、4D、5答案:C58.下面for语句执行时循环次数为()。Inti;For(i=0,j=5;i=j;){cout<<i<<j<<endl;I++;j--;}A、0B、5C、10D、无限答案:B59.哪个指令可以查看git历史提交记录A、gitlogB、gitcommitC、gitaddD、gitdiff答案:A60.下列说法正确的是________。A、字符型数组与整型数组可通用B、字符型数组与字符串其实没什么区别C、字符串的输出可以用存储它的数组来输出,也可以字符串的形式整体输出,结果没区别D、当字符串放在字符数组中,这时要求字符数组长度比字符串长1个单元,因为要放字符串终结符'\0’答案:D61.在二叉树结点的先序序列,中序序列和后序序列中,所有叶子结点的先后顺序A、都不相同B、完全相同C、先序和中序相同,而与后序不同D、中序和后序相同,而与先序不同答案:B62.执行语句序列inta=10,b=15,c;c=a||(a+=b)||(++b);后,变量a、b和c的值分别为________。A、10,15,1B、25,16,1C、10,15,10D、25,15,1答案:A63.对n个记录的文件进行快速排序,所需要的辅助存储空间大致为··A、O(1)B、O(n)C、O(1og2n)D、O(n2)答案:C64.[虚基类初始化]下列程序的输出是:#include<iostream>Usingnamespacestd;ClassA{public:A(){cout<<"A";}};ClassB:virtualpublicA{public:B(){cout<<"B";}};ClassC:virtualpublicA{public:C(){cout<<"C";}};ClassD:publicB,publicC{public:D(){cout<<"D";}};Intmain(){Dd1;return0;}A、ABACDB、ABCDC、BCDD、D答案:B65.链式存储的存储结构所占存储空间A、分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针B、只有一部分,存放结点值C、只有一部分,存储表示结点间关系的指针D、分两部分,一部分存放结点值,另一部分存放结点所占单元数答案:A66.模板函数的真正代码是在()时候产生。A、源程序中声明函数时B、源程序中定义函数时C、源程序中的调用函数时D、运行执行函数时答案:C67.如果变量x,y已经正确定义,下列语句哪一项不能正确将x,y的值进行交换()。A、x=x+y,y=x-y,x=x-yB、t=x,x=y;y=tC、t=y,y=x,x=tD、x=t,t=y,y=x答案:D68.下列关于构造函数的描述中,错误的是________。A、构造函数名与类名相同B、构造函数可以有返回值C、构造函数可以重载D、每个类都有构造函数答案:B69.函数默认参数在函数原型中说明,默认参数必须放在参数序列的()A、前部B、中部C、后部D、两端答案:C解析:定义函数时,只能为函数最后面的连续若干个参数设置默认值,且在调用处也只能缺省后面的连续若干个实参。即默认参数必须在参数序列的后部。70.若一个类中含有纯虚函数,则该类称为()。A、基类B、纯基类C、抽象类D、派生类答案:C71.有如下程序:intf1();staticintf2();classA{public:intf3();staticintf4();};在所描述的函数中,具有隐含的this指针的是________。A、f1B、f2C、f3D、f4答案:C72.if(x),表达式x等效于()。A、x==1B、x==0C、x!=1D、x!=0答案:D73.使用new创建的对象,对其生命周期描述正确的是()A、由系统决定B、由用户控制C、全局生命周期D、永久存在答案:B解析:运算符new用于建立生存期可控的对象,new返回这个对象的指针。使用new建立的动态对象只能用delete删除,以便释放所占空间,因此由new创建的对象生命周期由用户控制。74.设有如下定义:Structst{Inta;Intb;}data;Int*p;则要使p指向data中的成员a的正确赋值语句是()。A、p=&a;B、p=data.aC、p=&data.aD、p=data.&a答案:C75.以下不正确的定义语句是()。A、doublex[5]={2.0,4.0,6.0,8.0,10.0};B、inty[5]={0,1,3,5,7,9};C、charc1[]={′1′,′2′,′3′,′4′,′5′};D、charc2[]={′\x10′,′\xa′,′\x8′};答案:B76.无类型标识符是指()A、voidB、boolC、shortD、long答案:A解析:如果函数不需要返回值,可用void标识。故本题选A。Bool表示布尔型,short表示短整型,long表示长整型,这三个都是数据类型。77.假定AB为一个类,则执行“ABa(2),b[3],*p[4];”语句时调用该类构造函数的次数为()A、3B、4C、5D、9答案:B78.定义如下变量和数组:Intk;Inta[3][3]={9,8,7,6,5,4,3,2,1};则下面语句的输出结果是()。For(k=0;k<3;k++)cout<<a[k][k];A、753B、951C、963D、741答案:B79.对于C/C++语言的函数下列叙述中正确的是()。A、函数的定义不能嵌套,但函数调用可以嵌套B、函数的定义可以嵌套,但函数调用不能嵌套C、函数的定义和调用都不能嵌套D、函数的定义和调用都可以嵌套答案:A80.下列有关内联函数的叙述中,正确的是()。A、内联函数在调用时发生控制转移B、内联函数必须通过关键字inline来定义C、内联函数是通过编译器来实现的D、内联函数函数体的最后一条语句必须是return语句答案:C81.下述程序中,含有错误的行是________。A、1行B、2行C、3行D、4行答案:B82.对于C/C++语言的函数,下列叙述中正确的是()。A、函数的定义不能嵌套,但函数调用可以嵌套。B、函数的定义可以嵌套,但函数调用不能嵌套C、函数的定义和调用都不能嵌套。D、函数的定义和调用都可以嵌套答案:A83.请问对一个排好序的数组进行查找,用平均时间复杂度最小的算法,时间复杂度为()A、O(n)B、O(logn)C、O(nlogn)D、O(1)答案:B84.在一个类体的下列声明中,正确的纯虚函数声明是()。A、virtualvoidvf()=0;B、voidvf(int)=0;C、virtualintvf(int);D、virtualvoidvf(int){}答案:A85.在下列关键字中,不能用来表示继承方式的是________。A、privateB、staticC、publicD、protected答案:B86.C++程序中的简单语句必须以()结束。(题)A、空格B、冒号C、分号D、花括号答案:C87.关于用const定义的常变量,下列叙述错误的是________。A、定义常变量时必须进行初始化B、每个常变量都有其特定的数据类型C、常变量在使用前必须先进行定义D、常变量定义之后可以被改变答案:D88.在C程序的源文件中如果需要使用函数strcpy,需要在该文件开头引入哪个头文件()A、iostream.hB、string.hC、math.hD、不需要任何头文件答案:B89.下列有关new和delete运算符的描述中,错误的是________。A、new运算符分配的空间只能用delete运算符撤销B、对一个指针只能使用一次deleteC、当用于删除数组时,在delete运算符后面可直接跟数组名,而不用管数组的维数D、new运算符分配数组空间时不能指定初值答案:C90.类A、B、C的定义如下:ClassA{public:intm;A(intm=0):m(m){}};ClassB{public:intm;A(intm=0):m(m){}};ClassC{public:intm;Aa;Bb;C(intm=0):b(m),a(m),m(m){}};则在C类的对象生命期结束时,调用各个类的析构函数的次序是:A、A,B,CB、B,A,CC、C,A,BD、C,B,A答案:D91.以下代码中的两个sizeof用法有问题吗?voidUpperCase(charstr[])//将str中的小写字母转换成大写字母{For(size_ti=0;i<sizeof(str)/sizeof(str[0]);++i)If('a'<=str[i]&&str[i]<='z')Str-=('a'-'A');}Charstr[]="aBcDe";Cout<<"str字符长度为:"<<sizeof(str)/sizeof(str[0])<<endl;UpperCase(str);Cout<<str<<endl;A、函数内的有问题B、函数外的有问题C、函数内,外的都有问题D、用法正确答案:C解析:外层是字符串长度不正确,内层是数组退化为指针。92.下列选项中,if语句语法正确的是()。A、if(x>0)printf("%f",x)elseprintf("%f",-x);B、if(x>0){x=x+y;printf("%f",x);}elseprintf("%f",-x);C、if(x>0){x=x+y;printf("%f",x);};elseprintf("%f",-x);D、if(x>0){x=x+y;printf("%f",x)};elseprintf("%f",-x);答案:B93.递归算法必须包括·A、递归部分B、终止条件和递归部分C、迭代部分D、终止条件和迭代部分答案:B94.执行下列程序后,输出的结果是()。floata=1.1234;doubleb=1.1234;if(a==b)cout<<"Equal\n";elsecout<<"notequal\n";(题)A、notequalB、equalC、equalnotequalD、notequalequal答案:A95.有如下程序:#includeusingnamespacestd;classBase{private:voidfun1(){cout<<"fun1";}protected:voidfun2(){cout<<"fun2";}public:voidfun3(){cout<<"fun3";}};classDerived:protectedBase{public:voidfun4(){cout<<"fun4";}};intmain(){Derivedobj;obj.fun1();//①obj.fun2();//②obj.fun3();//③obj.fun4();//④return0;}其中有语法错误的语句是________。A、①②③④B、①②③C、②③④D、①④答案:B96.下列选项中,()不能交换变量a和b的值。(题)A、a=b;b=a;B、t=b;b=a;a=t;C、a=a+b;b=a-b;a=a-b;D、t=a;a=b;b=t;答案:A97.定义以下的类:classA{inta;public:A(intx=0){a=x;}};classB:publicA{intb;public:B(intx=0,inty=0):A(y){b=x;}};下列语句中,存在语法错误的是________。A、A*pa=newB(1,2);B、Aa1=B(1,3);C、Ab2(2,3);B&a2=b2;D、Bb3(10);Aa3(b3);答案:C98.0有如下程序:#includeusingnamespacestd;intmain(){intf,f1=0,f2=1;for(inti=3;i<=6;i++){f=f1+f2;f1=f2;f2=f;}cout<A、2B、3C、5D、8答案:C99.下面描述中,错误的是()。A、在基类定义的public成员在公有继承的派生类中可见,也能在类外被访问。B、在基类定义的protected成员在私有继承的派生类中可见。C、在基类定义的公有静态成员在私有继承的派生类中可见。D、访问声明可以在公有继承派生类中把基类的public成员声明为private成员。答案:D100.能正确表示逻辑关系:“0≤a≤10”的C++语言表达式是________。A、a<=10anda>=0B、0<=a<=10C、a<=10&&a>=0D、a<=10‖a>=0答案:C101.#include<iostream>Usingnamespacestd;Voidmain(){Inti,j,x=0;For(i=0;i<2;i++){X++;For(j=0;j<=3;j++){If(j%2)Continue;X++;}X++;}Cout<<"x="<<x<<endl;}(题)A、x=4B、x=6C、x=8D、x=10答案:C102.对使用关键字new所开辟的动态存储空间,释放时必须使用()A、freeB、createC、deleteD、realse答案:D解析:使用new运算符动态申请的内存空间,需要在使用完毕释放。C++提供了delete运算符,用来释放动态分配的内存空间。delete运算符的基本用法如下:Delete指针;故本题选C103.在下面的do-while循环语句中,其循环体语句被执行的次数为()?inti=0;do{i++;}while(i<10)A、8B、9C、10D、11答案:C104.逗号表达式(x=2*3,x=x*5),x+25的值为________。A、25B、55C、45D、100答案:B105.下列有关输入、输出的说法错误的是()。A、C++语言本身没有提供输入、输出语句B、C++语言中输入输出功能是通过输入输出流库中的流对象cin和cout实现的C、函数putchar()只能用来输出字符型变量的内容D、函数getchar()一次只能输入一个字符答案:C106.用C++语言编制的源程序要变为目标程序必须要经过()。(题)A、编译B、编辑C、汇编D、解释答案:A107.已知inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则不.能.表示数组a中元素的式子是()。A、*aB、*pC、aD、a[p-a]答案:C108.派生类的构造函数的成员初始化列中,不能包含()。A、基类的构造函数;B、派生类中子对象的初始化;C、基类的子对象初始化;D、派生类中一般数据成员的初始化答案:C109.在inta=3,*p=&a;中,*p的值是()。A、变量a的地址值B、无意义C、变量p的地址值D、3答案:D110.关于内联函数,以下说法正确的是。()A、内联函数不需要经过编译B、内联函数适用于函数体比较复杂的情况C、内联函数可以提高程序执行效率D、声明内联函数只需要在函数声明前加inline关键字答案:C111.设单链表中指针p指向结点m,若要删除m之后的结点(若存在),则需修改指针的操作为A、p->next=p->next->next;B、p=p->next;C、p=p->next->next;D、p->next=p;答案:A112.为了提高程序的运行速度,可将不太复杂的功能用函数实现,此函数应选择()。A、内联函数B、重载函数C、递归函数D、函数模板答案:A113.cout是C++的()A、关键字B、对象C、类D、运算符答案:B解析:C++类中对象:Cin:运算符为>>,用于键盘输入。Cout:运算符为<<,用于屏幕输出。故cout是对象。选B。114.图的邻接矩阵存储正确的是A、定义一个数组用来存储顶点和边信息B、定义一个数组用来存储权重C、定义两个数组存储顶点和边信息D、以上说法都不正确答案:C115.下面关于break语句的描述中,不正确的是().A、break语句可以在for循环语句中出现多次B、break语句可以在switch语句中出现多次C、一个break语句就可以跳出多重循环D、break可以用于循环体内答案:C116.unsignedinta=0x10100101;charb=a;b的值是多少?A、0x10B、0x01答案:B117.下列说法中不正确的是()。A、对象是类的一个实例B、任何一个对象只能属于一个类C、一个类只能有一个对象D、类与对象间的关系和数据类型与变量间关系相类似答案:C118.重载函数中调用时选择的依据中,_____是错误的。A、函数名字B、函数的返回类型C、参数个数D、参数的类型答案:B119.有以下的类定义:classMyClass{public:MyClass(){coutA、11B、111C、1111D、11111答案:B120.如果定义:floata[10],x;则以下叙述中正确的是()A、语句a=&x;是非法的B、表达式a+1是非法的C、三个表达式a[1]、*(a+1)、&a[1]代表的变量互不相同D、表达式*&a[1]是非法的,应该写成*(&(a[1]))答案:A解析:B选项中,表达式a+1不是非法的;C选项中,*(a+1)即指a[1];D选项中,*&a[1]不是非法的。因此A选项正确。121.在if语句中的表达式是()。A、只能是表达式B、只能是关系表达式和逻辑表达式C、只能是逻辑表达式D、可以是任意表达式答案:D122.执行下列语句后,x的值是(d),y的值是()。Intx,y;X=y=1;++x||++y;A、不确定B、0C、1D、2答案:C123.以下关于函数的叙述中正确的是________。A、每个函数都可以被其它函数调用(包括main函数)B、每个函数都可以被单独编译C、每个函数都可以单独运行D、在一个函数内部可以定义另一个函数答案:B124.下列哪个不是面向对象的关键要素()A、抽象性B、结构性C、封装性D、多态性答案:B解析:面向对象的程序设计有“抽象”“封装”“继承”和“多态”4个基本特点。故不包括B。125.对于某个函数调用,不给出调用函数的声明的情况是________。A、被调用函数是无参函数B、被调用函数是无返回值的函数C、函数的定义在调用处之前D、函数的定义有别的程序文件中答案:C126.若有以下类W说明,函数fConst的正确定义是()。ClassW{inta;Public:VoidfConst(int)const;};A、voidW::fConst(intk)const{k=a;}B、voidW::fConst(intk)const{k=a++;}C、voidW::fConst(intk)const{cin>>a;}D、voidW::fConst(intk)const{a=k;}答案:A127.若有以下定义,则对结构体变量错误操作的是。StructCC{Intnum;Charname[10];Floatscore[2];}s;(题)A、cin>>s.num;B、s.score[1]=66.5;C、cin>>s.score[0];D、=”LiMing”;答案:D128.通过下面哪种方式存储待排序元素,可以更容易实现快速排序A、顺序存储B、链式存储C、堆D、栈答案:A129.定义了指向常量的指针p的选项是()A、constint*p;B、int*p;C、int*constp=&x;D、constint*constp=&x;答案:A解析:const修饰指针变量时:如果唯一的const位于符号*的左侧,表示指针所指数据是常量,数据不能通过本指针改变,但可以通过其他方式进行修改;指针本身是变量,可以指向其他的内存单元。本题中,“指向常量的指针p”,表示指针所指数据是常量,故唯一的const位于符号*的左侧,选A。注意:如果唯一的const位于符号*的右侧,表示指针本身是常量,不能让该指针指向其他内存地址;指针所指的数据可以通过本指针进行修改。在符号*的左右各有一个const时,表示指针和指针所指数据都是常量,既不能让指针指向其他地址,也不能通过指针修改所指向的内容。130.假定一条定义语句为“inta[10],x,*p=a;”,若要把数组a中下标为3的元素值赋给x,则不正确的语句为()A、x=p[3]B、x=*(a+3)C、x=a[3]D、x=*p+3答案:D131.有以下函数定义:Voidfun(intn,doublex){…}若以下选项中的变量都已经正确定义且赋值,则对函数fun的正确调用语句是()。A、fun(inty,doublem);B、k=fun(10,12.5);C、fun(x,n);D、voidfun(n,x);答案:C132.有序数组123456789查找3的二分查找序列是:A、1->2->3B、5->2->3C、9->5->3D、5->1->4->3答案:B133.有如下类定义和变量定义:classBase{public:intx;private:inty;};classA:publicBase{/*类体略*/};classB:privateBase{/*类体略*/};Aa;Bb;下列语句中正确的是________。A、cout<B、cout<C、cout<D、cout<答案:A134.下列字符常量的写法中,错误的是()A、′\t′B、“B”C、‘*’D、‘a’答案:B解析:字符常量:用单引号括起来的单个字符或转义字符。字符串常量:用双引号括起来。选项B是字符串常量。135.设有定义:intx[10],*p=x,i;若要为数组x读入数据,以下选项正确的是()A、for(i=0;i<10;i++)scanf("%d",p+i);B、A.for(i=0;i<10;i++)scanf("%d",*p+i);C、A.for(i=0;i<10;i++)scanf("%d",*(p+i));D、A.for(i=0;i<10;i++)scanf("%d",x[i]);答案:A136.已知p是一个指向类sample数据成员m的指针,s是类sample的一个对象。如果要给m赋值为5,哪个是正确的()。A、s.p=5B、s->p=5C、s.*p=5D、*s.p=5答案:C137.下列输出语句中,正确的是()A、cout<<("%c\n","student")B、cout<<("%s\n","hello")C、cout<<("%c\n","c")D、cout<<("%s\n",&a)答案:B解析:%c是输岀单个字符的格式控制符。%s是输出字符串的格式控制符。故只有B正确。选项C中"c"是字符串,不能用c%格式输出。138.若x是一个bool型变量,y是一个值为-5的int型变量,则表达式!x&&y<0的值为________。A、为trueB、为falseC、与x的值相同D、与x的值相反答案:D139.关于C++的特点下列说法不正确的是()。A、C++是C语言的超集,大多数C程序在不用修改的情况下就可以在C++的集成环境下运行或调试B、C++是面向对象的程序设计语言C、C++的执行效率很高D、C++中没有结构化编程的语句答案:D140.若int型变量x,y.x=29,y=6,则表达式x/y的值为()。A、5B、5.0C、4D、4.83333答案:C141.下面选项中等价的是________。A、inta[2][3]={3,4,5}与inta[][3]={3,4,5};B、inta[2][3]={0,1}与inta[2][3]={{0},{1}};C、inta[2][3]={1,0,2,2,4,5}与inta[2][]={1,0,2,2,4,5};D、inta[][3]={1,0,2,2,4,5}与inta[2][3]={1,0,2,2,4,5};答案:D142.设n是描述问题规模的非负整数,下面程序片段的时间复杂度是()。x=2;while(xA、O(log2n)B、O(n)C、O(nlog2n)D、O(n2)答案:A143.在一个单链表head中,若要在指针p所指结点后插入一个q指针所指结点,则执行A、p->next=q->next;?q->next=p;B、q->next=p->next;?p=q;?C、p->next=q->next;?p->next=q;?D、q->next=p->next;?p->next=q;?答案:D144.使用派生类的主要原因是:A、提高代码的可重用性B、提高程序的运行效率C、加强类的封装性D、实现数据的隐藏答案:A145.一个二叉树有N个度为2的节点,求叶节点的数目为多少A、N-1B、NC、N+1D、N+2答案:C146.下列程序的输出结果是________。#includeusingnamespacestd;voidfun(int*s){staticintj=0;do*(s+j)+=*(s+j+1);while(++j<2);}intmain(){inti,a[10]={1,2,3,4,5};for(i=1;i<3;i++)fun(a);for(i=0;i<5;i++)cout<A、34756B、23445C、35745D、12345答案:C147.在函数定义中的形参属于()A、全局变量B、局部变量C、静态变量D、寄存器变量答案:B148.下列哪个类型函数不适合声明为内联函数()A、函数体语句较多B、函数体语句较少C、函数执行时间较短D、函数执行时间过长答案:A149.程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用()符号作为分隔符。A、空格或逗号B、逗号或回车C、逗号或分号D、空格或回车答案:D150.在32位机器上,代码段的执行结果为()charx=65;floaty=7.3;inta=100;doubleb=4.5;printf("%d,%d,%d,%d\n",sizeof(x),sizeof(y),sizeof(a),sizeof(b));A、2,2,2,4B、1,2,4,4C、1,4,4,8D、2,4,4,8答案:C151.若一棵二叉树的前序遍历序列和后序遍历序列分别为1,2,3,4和4,3,2,1,则该二叉树的中序遍历序列不会是A、1,2,3,4B、2,3,4,1C、3,2,4,1D、4,3,2,1答案:C152.下面关于C++lambda表达式说法正确的有A、[capture](params)->ret{body}这是一个完整的lambda表达式形式B、capture值为[a,&b]表示a变量以值的方式呗捕获,b以引用的方式被捕获C、capture为[=]表示不捕获外部的任何变量D、lambda表达式是属于C++14的新特性答案:B解析:Lambda函数语法定义:[capture](parameters)mutable->return-type{statement};A错误.[=]表示值传递方式捕捉所有父作用域的变量(包括this);B错误.lambda表达式是属于C++11&14新特性;D错误.153.若有数组定义"inta[][3]={1,2,3,4,5,6};",则a[1][0]的值是()。A、1B、2C、4D、5答案:C154.若已经声明了函数原型"voidfun(intA,doubleb=0.0);",则下列重载函数声明中正确的是()。A、voidfun(inta=90,doubleb=0.0);B、intfun(intA,doubleB);C、voidfun(doubleA,intB);D、boolfun(intA,doubleb=0.0);答案:C155.二叉查找树的查找效率与二叉树的什么有关A、高度B、结点的多少C、树型D、结点的位置答案:C156.设栈S和队列Q的初始状态均为空,元素a,b,c,d,e,f,g依次进入栈S。若每个元素出栈后立即进入队列Q,且7个元素出队的顺序是b,d,c,f,e,a,g,则栈S的容量至少是A、1B、2C、3D、4答案:C157.()不是构造函数的特征。A、构造函数的函数名与类名相同;B、构造函数可以重载;C、构造函数可以设置缺省参数;D、构造函数必须指定类型说明。答案:D158.在函数调用时,如某一默认参数要指明一个特定值,则有()A、其之前所有参数都必须赋值B、其之后所有参数都必须赋值C、其前、后所有参数都必须赋值D、其前、后所有参数都不必赋值答案:A159.vector随机读的时间复杂度是?A、O(1)B、O(n)C、O(logN)D、O(n²)答案:A160.设置虚基类的目的是:()A、简化程序B、消除二义性C、提高运行效率D、减少目标代码答案:B161.0有如下程序:#includeusingnamespacestd;intmain(){intf,f1=0,f2=1;for(inti=3;i<=6;i++){f=f1+f2;f1=f2;f2=f;}cout<A、2B、3C、5D、8答案:C162.下列有关引用的说法中,错误的是________。A、函数可以返回引用B、返回值的类型为引用时不产生值的副本C、形参和实参前加&均为引用类型变量D、若一个函数返回了引用,则该函数的调用也可以被赋值答案:C163.面向对象程序设计范型的主要特征是:A、程序=数据结构+算法B、程序=过程+调用C、程序=对象+消息D、程序=数据+运算答案:C164.若对n个元素进行直接插入排序,在进行第i趟排序时,假定元素r[i+1]的插入位置为r[j],则需要移动元素的次数为A、j-iB、i-j-1C、i-jD、i-j+1答案:D165.已知函数f的原型是:voidf(int*a,long&b);变量v1、v2的定义是:intv1;longv2;,正确的调用语句是()。A、f(v1,&v2);B、f(v1,v2);C、f(&v1,v2);D、f(&v1,&v2);答案:C166.关于动态存储分配,下列说法正确的是()。A、new和delete是C++语言中专门用于动态内存分配和释放的函数B、动态分配的内存空间也可以被初始化C、当系统内存不够时,会自动回收不再使用的内存单元,因此程序中不必用delete释放内存空间D、当动态分配内存失败时,系统会立刻崩溃,因此一定要慎用new答案:B167.若x和y是程序中的两个整型变量,则下列if语句中正确的是()。A、ifx==0y=1;elsey=2;B、if(x==0)y=1;elsey=2;C、if(x==0)y=1elsey=2;D、if(x==0)theny=1elsey=2;答案:B168.在对n个元素进行直接插入排序的过程中,共需要进行()躺A、nB、n+1C、n-1D、2n答案:C169.C++语言的函数体必须放在一对()中A、{}B、""C、[]D、()答案:A170.下列程序执行后的输出结果是______________。#includeusingnamespacestd;intmain(){charb[]="happynewyear";cout<<"12345678"+4<A、5678wyearB、5678yearC、12345682yearD、52345678year答案:B171.cin的功能是A、标准输入B、标准输出C、标准打开D、标准关闭答案:A172.下面对静态数据成员的描述中,正确的是()A、类的不同对象有不同的静态数据成员值B、类的每个对象都有自己的静态数据成员C、静态数据成员是类的所有对象共享的数据D、静态数据成员不能通过类的对象调用答案:C173.下列关于C++函数的说明中正确的是()。A、内联函数就是定义在另一函数体内部的函数。B、函数体的最后一条语句必须是RETURN语句。C、标准C++要求在调用一个函数之前,必须先声明其原型。D、编译器会根据函数的返回值类型和参数表来区分函数的不同重载形式。答案:D174.有关二叉树下列说法正确的是A、二叉树的度为2B、一棵二叉树的度可以小于2C、二叉树中至少有一个结点的度为2D、二叉树中任何一个结点的度都为2答案:B175.为实现快速排序算法,待排序序列宜采用的存储方式是()。A、顺序存储B、链式存储C、堆D、栈答案:A176.在下面存储类中,()的对象不是局部变量。A、外部静态类B、自动类C、函数形参D、寄存器类答案:A177.为了使类中的某个成员能够被类的所有对象共享,应该将该类成员定义为________。A、常成员B、静态成员C、公有成员D、保护成员答案:B178.以下叙述中不正确的是()A、在一个函数中,可以有多条return语句B、函数的定义不能嵌套,但函数的调用可以嵌套C、函数必须有返回值D、不同的函数中可以使用相同名字的变量答案:C解析:函数都需要由类型说明。intmain()指出main是整数类型,返回值由return后面的表达式决定,且表达式的值必须与声明函数的类型一致。如果函数不需要返回值,还可用void标识。故C错误,函数可以没有返回值。179.假设已经定义好了类student,现在要定义类derived,它是从student私有派生的,则定义类derived的正确写法是()A、classderived::studentprivate{//………….}B、classderived::studentpublic{//………….}C、classderived::publicstudent{//………….}D、classderived::privatestudent{//………….}答案:D180.有类定义如下:classA{intx,y;public:A(intm=0,intn=0){x=m;y=n;}};classB{Aa1(1);Aa2(2,2);Aa3();Aa4;};则下列描述中正确的是________。A、A类的定义有错B、B类的定义无错C、a1和a2的定义均有错D、a3和a4的定义均有错答案:C181.下列各组类型声明符中,含义相同的一组是()。(题)A、signedshortint和shortB、unsignedlongint和longC、unsignedshort和shortD、shortint和int答案:A182.定义一个非常大的数组可能造成的后果是?A、系统自动优化,无任何影响B、栈溢出,很有可能造成程序终止答案:B183.下列不是描述类的成员函数的是()A、构造函数B、析构函数C、友元函数D、拷贝构造函数答案:C184.下列各运算符中,()优先级最低。A、?:B、|C、||D、!=答案:A185.下列选项中不能作为C++用户标识符为()。A、MainB、sizeofC、_intD、Return答案:B186.能实现删除文件数据的语句是()。A、ofstreamfs(“date.dat“,ios::trunc);B、ifstreamfs(“date.dat“,ios::trunc);C、ofstreamfs(“date.dat“,ios::out);D、ifstreamfs(“date.dat“,ios::in);答案:A187.下列关于this指针的叙述中,正确的是()。A、this指针是一个隐含指针,它隐含于类的成员函数中B、只有在使用this时,系统才会将对象的地址赋值给thisC、类的友元函数也有this指针D、this指针表示了成员函数当前操作的数据所属的对象答案:D188.for(intx=0,y=0;!x&&y<=10;y++);语句执行循环的次数是________。A、0B、10C、11D、无限答案:C189.不能作为函数重载的判断依据的是()A、constB、返回类型C、参数个数D、参数类型答案:B解析:实现函数的重载必须满足下列条件之一:1)参数表中对应的参数类型不同。2)参数表中参数个数不同。用const修饰传递参数,意思是通知函数,它只能使用参数而无权修改它,可以作为函数重载的判断依据。返回类型不能作为函数重载的依据。故本题选B。190.声明函数intFunc(inta=0,intb=3,intc=4)相当于声明了几个函数形式()A、1B、2C、3D、4答案:D解析:可以用4种方法调用,即Func()//无参数Func(2)//一个参数Func(2,3)//两个参数Func(2,3,3)//三个参数191.对下列程序,选项中叙述正确的是________。A、程序编译运行正确B、程序编译时语句①出错C、程序编译时语句②出错D、程序编译时语句③出错答案:A192.已知基类Employee只有一个构造函数,其定义如下Employee::Employee(intn):id(n){}Manager是Employee的派生类,则下列对Manager的构造函数的定义中,正确的是________。A、Manager::Manager(intn):id(n){}B、Manager::Manager(intn){id=n;}C、Manager::Manager(intn):Employee(n){}D、Manager::Manager(intn){Employee(n);}答案:C193.已知inta=3;,则执行完表达式a+=a-=a*a后,a的值是________。A、-3B、9C、-12D、6答案:C194.在编译指令中,嵌入指令是指()A、#includeB、#defineC、#ifD、#else答案:A解析:嵌入指令#include指示编译器将一个源文件嵌入到带有#include指令的源文件中该指令所在的位置处。故本题选A。195.二叉树T的前序遍历序列和中序遍历序列分别是bdcaef和cdeabf,则其后序遍历序列为A、ceadfbB、feacdbC、eacdfbD、以上都不对答案:A196.以下排序算法平均时间复杂度和插入排序相同的是()A、冒泡排序B、希尔排序C、快速排序D、以上说法都不正确答案:A197.在文件包含预处理语句的中,被包含文件名用“<>”括起时,寻找被包含文件的方式是()A、直接按系统设定的标准方式搜索目录B、先在源程序所在目录搜索,再按系统设定的标准方式搜索C、仅仅在源程序所在目录搜索D、仅仅搜索当前目录答案:A198.关于虚函数,正确的描述是:A、构造函数不能是虚函数B、析构函数不能是虚函数C、虚函数可以是友元函数D、虚函数可以是静态成员函数答案:A199.运行如下程序,输出结果是()。#include<iostream>Usingnamespacestd;Intmain(){IntF,f1=0,f2=1;For(inti=3;i<=6;i++){F=f1+f2;F1=f2;F2=f;}Cout<<f;Return0;}A、2B、3C、5D、8答案:C200.一个函数功能不太复杂,但要求被频繁调用,应选用()A、内联函数B、重载函数C、递归函数D、嵌套函数答案:A解析:对于只有很少几条语句的函数,特别是频繁调用时,函数调用导致的时间开销可能会使程序运行明显变慢。为了避免这种频繁的函数调用与返回,加快执行速度,C++语言引入了内联函数的概念。故本题选A。201.以下程序段中与语句k=a>b?1:0;功能等价的是(D)。A、if(a>b)k=1;B、if(a>b)k=0C、if(a>b)k=1;D、if(a答案:D202.有如下程序:#include<iostream>Usingnamespacestd;Intmain(){Chara;Cin>>a;If(a='*')cout<<"***"<<endl;Elsecout<<"###"<<endl;Return0;}输入字符+时,程序的运行结果是()。A、***B、###C、***###D、无输出答案:A203.假设i=2,执行下列语句后i的值为()。Switch(i){case1:i++;Case2:i--;Case3:++i;break;Case4:--i;Default:i++;}A、1B、2C、3D、4答案:B204.链式栈结点为:(data,link),top指向栈顶.若想摘除栈顶结点,并将删除结点的值保存到x中,则应执行操作()。A、x=top->data;top=top->link;B、top=top->link;x=top->link;C、x=top;top=top->link;D、x=top->link;答案:A205.有序数组123456789查找3的二分查找序列是:A、1->2->3B、5->2->3C、9->5->3D、5->1->4->3答案:B206.下述关于开关语句的描述中,()是正确的。A、开关语句中default子句可以没有,也可以有一个;B、开关语句中每个语句序列中必须有break语句;C、开关语句中default子句只能放在最后;D、开关语句中case子句后面的表达式可以是整形表达式答案:A207.设某棵二叉树的中序遍历序列为ABCD,前序遍历序列为CABD,则后序遍历该二叉树得到序列为()A、BADCB、BCDAC、CDABD、CBDA答案:A208.已知以下代码:1classA2{3public:4inta;5public:6A(){f();}7virtualvoidf()=0;8voidfun();}则有错误的语句是()。"A、4B、6C、7D、8答案:B209.f1(int)是类A的公有成员函数,p是指向成员函数f1()的指针,采用()是正确的。A、p=f1B、p=A::f1C、p=A::f1()D、p=f1()答案:C210.数据结构的二叉链表进行树的存储时,根结点的右指针是()A、指向最左孩子B、指向最右孩子C、空D、非空答案:C211.下面程序输出的结果是()。Intmain(){inti;Inta[3][3]={1,2,3,4,5,6,7,8,9};For(i=0;i<3;i++)Cout<<a[2-i][i];Return0;}A、159B、753C、357D、591答案:B212.字面常量42、4.2、42L的数据类型分别是()。A、long、double、intB、long、float、intC、int、double、longD、int、float、long答案:C213.IO流中istream继承于()类A、ostreamB、iosC、ifstreamD、iostream答案:B214.以下表达式“0||1&&1”的值为。()A、2B、1C、0D、表达式错误答案:B215.字符串“a+b=12\n\t”的长度为________。A、12B、10C、8D、6答案:C216.所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是()。A、类B、对象C、函数体D、数据块答案:A217.下列变量名正确的是()。A、1aB、intC、_n_2D、#a2答案:C218.已知有结构体类型及变量定义:structstudent{charnum[20];intage;}stud1,*p;p=&stud1;下列对结构体变量stud1的成员age的非法引用是________。A、stud1.ageB、student.ageC、p->ageD、(*p).age答案:B219.下列语言不属于高级语言中的是()A、C语言B、机器语言C、FORTRAN语言D、C++语言答案:B220.什么函数不能声明为虚函数?A、静态成员函数、构造函数B、内联函数、构造函数C、静态成员函数、析构函数D、内联函数、析构函数答案:A解析:常见的不能声明为虚函数的有:普通函数(非成员函数)、静态成员函数、内联成员函数、构造函数、友元函数。221.下列for循环的次数为()。For(inti(0),x=0;!x&&i<=5;i++)A、5B、6C、1D、无限答案:B222.已知inta=3;,则执行完表达式a+=a-=a*a后,a的值是________。A、-3B、9C、-12D、6答案:C223.下列程序执行后的输出结果是_____。#include<iostream>Usingnamespacestd;Voidmain(){Intx='f';Cout<<char('A'+(x-'a'+1));}(题)A、GB、HC、ID、J答案:A224.已知二叉树后序遍历序列是bfegcda,中序遍历序列是badefcg,它的前序遍历序列是:A、abcdefgB、abdcefgC、adbcfegD、abecdfg答案:B225.下列符号中可以用作C++标识符的是()。(题)A、radiusB、foo~barC、elseD、3room答案:A226.数据库索引的说法正确的是?A、用处不大,可有可无B、加快检索表中数据的方法答案:B227.如果downcast是安全的(也就是,如果基类指针或者引用确实指向一个派生类对象)这个运算符会传回适当转型过的指针。如果downcast不安全,这个运算符会传回空指针(也就是说,基类指针或者引用没有指向一个派生类对象)。这个是指C++里的()A、dynamic_castB、reinterpret_castC、static_castD、const_cast答案:A解析:dynamic_cast将一个基类对象指针(或引用)cast到继承类指针,dynamic_cast会根据基类指针是否真正指向继承类指针来做相应处理,即会作一定的判断。对指针进行dynamic_cast,失败返回null,成功返回正常cast后的对象指针;对引用进行dynamic_cast,失败抛出一个异常,成功返回正常cast后的对象引用。reinterpret_cast这个转换是最“不安全”的,两个没有任何关系的类指针之间转换都可以用这个转换实现。static_cast静态转换是最接近于C风格转换,很多时候都需要程序员自身去判断转换是否安全。const_cast这个转换好理解,可以将常量转成非常量。228.若有定义floatw;intA,b;,则合法的switch语句是________。A、switch(w){case1.0:cout<<"*\n";case2.0:cout<<"**\n";}B、switch(a){case1cout<<"*\n";case2cout<<"**\n";}C、switch(b){case1:cout<<"*\n";default:cout<<"\n";case1+2:cout<<"**\n";}D、switch(a+b);{case1:cout<<"*\n";case2:cout<<"**\n";default:cout<<"\n";}答案:C229.栈的操作原则是A、顺序进出B、后进后出C、后进先出D、先进先出答案:C230.下列有关内联函数的叙述中,正确的是()。A、内联函数在调用时发生控制转移B、内联函数必须通过关键字inline来定义C、内联
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026洞头海霞青年营度假酒店招聘5人备考题库(浙江)及答案详解(必刷)
- 2026天津联通派遣制智家工程师、营业员招聘5人备考题库附答案详解(研优卷)
- 2026福建三明将乐县事业单位招聘工作人员42人备考题库含答案详解(模拟题)
- 雨课堂学堂在线学堂云《食品工程伦理(江南)》单元测试考核答案
- 服装厂订单管理准则
- 婚纱摄影服务合同
- 2026广东汕头大学医学院实验动物中心劳务派遣人员招聘4人备考题库及完整答案详解
- 2026四川成都市锦江区学府幼儿园招聘员额教师2人备考题库附答案详解【完整版】
- 2026内蒙古呼和浩特市实验幼儿园招聘教师1人备考题库及参考答案详解(精练)
- 2026黑龙江黑河市第一人民医院上半年招聘劳动合同制工作人员6人备考题库有答案详解
- 声屏障供应合同协议
- 2025年河南建筑职业技术学院单招职业技能测试题库审定版
- 员工放弃社保协议书范本
- 2025福建高中春季高考学业水平考试数学测试卷
- 新生儿呼吸道合胞病毒感染病因介绍
- 电力应急演练
- 批量伤员救治
- 车站调度员(技师)技能鉴定理论考试题库(含答案)
- 耳针法(耳穴埋豆)操作评分标准
- MOOC 刑法学总论-西南政法大学 中国大学慕课答案
- (新版)烟叶分级工(技师)专业知识考试题库大全-2烟叶加工和使用
评论
0/150
提交评论