C语言单项选择题
C语言单项选择题(含答案)

计算机程序设计基础(C语言)单项选择练习题一、基本概念1. C语言程序是由构成的。
A)一些可执行语言 B)main函数C)函数 D)包含文件中的第一个函数2. 是构成C语言程序的基本单位。
A)函数 B)过程 C)子程序 D)子例程3.C语言可执行程序从开始执行。
A) 程序中第一条可执行语句 B) 程序中第一个函数C) 程序中的main函数 D) 包含文件中的第一个函数4.C语言程序从main()函数开始执行,所以这个函数要写在____。
A) 程序文件的开始 B) 程序文件的最后C) 它所调用的函数的前面 D) 程序文件的任何位置5. 以下说法中正确的是。
A)C语言程序总是从第一个定义的函数开始执行B)在C语言程序中,要调用的函数必须在main( )函数中定义C)C语言程序总是从main( )函数开始执行D)C语言程序中的main( )函数必须放在程序的开始部分6. 下列方法中错误的是。
A)主函数可以分为两个部分:主函数说明部分和主函数体。
B)主函数可以调用任何非主函数的其它函数。
C)任何非主函数可以调用其它任何非主函数。
D)程序可以从任何非主函数开始执行。
7.下列关于C语言的说法错误的是。
A) C程序的工作过程是编辑、编译、连接、运行B) 标识符的命名由英文字母、数字和下划线组成,与字母的大小写无关C) C程序的三种基本结构是顺序、选择、循环D) 一个C程序总是从main函数开始执行的8. 系统默认的C语言源程序扩展名为.C,需经过之后,生成.exe文件,才能运行。A) 编辑、编译 B )编辑、连接 C) 编译、连接 D) 编辑、改错9.下列说法中正确的是。
A)由于C源程序是高级语言程序,因此一定要在TC软件中输入。
B)由于C源程序是由字符流组成的,因此可以作为文本文件在任何文本编辑的软件中输入。
C)由于C程序是高级语言程序,因此输入后即可执行。
D)由于C程序是高级语言程序,因此它是由命令组成的。
C语言练习题

void main()
{ int s,k;
for(s=0,k=0;k<3;k++)
s+=a[k][k];
printf("%d#",s);
for(s=0,k=0;k<3;k++)
7. 设 char x =′a′;则printf(″x = ﹪c, y = ﹪c \ n″,x,97);的输出是( )
A. x = a,y = 97 B. x = 97,y = a
C. x = 97,y = 97 D. x = a,y = a
8、在Trubo-C中,C语言源程序文件的后缀是()。
A. if(a>b){if(c>d) x = 1;else x = 2;}
B. if(a>b){if(c>d) x = 1;} else x = 2;
C. if((a>b) && (c>d)) x = 1;else x = 2;
D. if(a< =b) x = 2;else if (c>d) x = 1;
15.若变量a,b,c已正确定义并赋值,符合C语言语法的表达式是( )。
A. ab/c; B. a/cb C. a?b D. a*b/c
16.为表示.“a和b都大于0”,应使用的C语言表达式是( )。
A.(a>0)&&(b>0) B.a&&b C.(a>0)||(b>0) D.(a>0)|(b>0)
{ *y=x++; }
C语言试题及答案

《C语言程序设计》试题四一.单项选择题1.运算符___________的优先级最高。
A.[ ]B.+= C.?: D.++2.main( ){ int n;( n=6*4,n+6),n*2;printf(―n=%d\n‖,n); }此程序的输出结果是______________.A.30 B. 24 C.60 D. 483.若有如下定义,则__________是对数组元素的正确的引用。
.int a[10] , *p ;p=a ;A. *&a[10]B.a[11] C. *(p+11) D. *p *p *p4.设整型变量n的值为2,执行语句―n+=n-=n*n;‖后,n的值是__________A. 0B. 4C. - 4D. 25.各种基本数据类型的存贮空间正确的长度排列为__________。
A.Char<long<int<float<do ubleB.Double<float<long<int< charC.Char<int<long<float<do ubleD.Float<int<long<char<do uble 6.下面的变量说明中_____________是正确的。
A.char:a, b, c;B.char a; b; c; C.chara, b, c; D.char a, b, c7.表达式y=(13>12?15:6>7?8:9)的值为____________ 。
A9 B 8C 15 D. 18.若x=5,y=3 则y*=x+5; y的值为_______________.A. 10B. 20C. 15D. 309.能正确表示a和b同时为正或同时为负的逻辑表达式是_________。
A.a>=0||b>=0)&&(a<0||b<0) B.(a>=0 &&b>=0)&&(a<0 && b<0)C.(a+b>0) &&(a+b<=0)D.a*b>010.C语言中,合法的字符型常数是_________。
C语言选择、填空、判断题

一、单项选择题(17道小题,共20分)1、以下叙述中正确的是( C )。
(1分)A、 C语言比其他语言高级B、 C语言可以不用编译就能被计算机识别执行C、 C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D、 C语言出现的最晚,具有其他语言的一切优点2、以下说法正确的是( C )。
(1分)A、C语言程序总是从第一个函数开始执行B、在C语言程序中,要调用函数必须在main()函数中定义C、C语言程序总是从main()函数开始执行D、C语言程序中的main()函数必须放在程序的开始部分3、下列可用于C语言用户标识符的一组是( B )。
(1分)A、 void define WORDB、 a3_b3 _123 CarC、 For abc caseD、 2a DO sizeof4、设int a=3,b=4,c=5;表达式(a+b)>c&&b==c的值是( C ) 。
(1分)A、2B、-1C、0D、15、以下关于循环体的描述中,( C )是错误的。
(2分)A、循环体中可以出现break语句B、循环体中还可以出现循环语句C、循环体中不能出现continue语句D、循环体中可以出现switch语句6、While(x)中的x相当于( D )。
(2分)A、x==0B、x==1C、x!=1D、x!=07、以下关于switch语句和break描述中 , ( A ) 是正确的。
(2分)A、在switch语句中,可以根据需要使用或不使用break语句B、switch语句中必须用break语句C、break语句只能用于switch语句D、break语句是switch语句必须的一部分8、以下对C语言函数的有关描述中,正确的是( B )。
(1分)A、在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参B、C函数既可以嵌套调用又可以递归调用C、函数必须有返回值,否则不能使用函数D、C程序中有调用关系的所有函数必须放在同一个源程序文件中、9、在下面的函数声明中,存在着语法错误的是( A )。
C语言试题库(含答案)

D、print f("%c\n",class[2].name[0]);
标准答案:D
【5】设单精度变量f,g的值均为5.0,则下面的表达式中,使f为10.0的表达式是。
A、f+=g
B、f-=g+5
C、f*=g-5
D、f/=g*5
标准答案:A
if(ch=='/')w=a/b;
B、B)if(ch=='*')w=a*b;
else if(ch=='/')w=a/b;
if(ch=='+')w=a+b;
else if(ch=='-')w=a-b;
C、if(ch=='+')w=a+b;
else if(ch=='-')w=a-b;
if(ch=='*')w=a*b;
A、15
B、10
C、25
D、20
标准答案:A
【15】程序段的基本结构中,不包含()。
A、函数结构
B、循环结构
C、顺序结构
D、分支结构
标准答案:A
【1】执行语句scanf("%d,%d",&m,&n);使m和n的值分别为1和2,正确输入是。
A、1
B、2
C、1,2
D、12
标准答案:c
【3】若用数组名作为函数调用的实参,传递给形参的是()。
#include<stdio.h>
main()
{int i=1;
C语言题目

复习题一一、单项选择题1.C语言程序的执行,总是起始于【】。
A) 程序中的第一条可执行语句B) 程序中的第一个函数C) main函数D) 包含文件中的第一个函数2.下列说法中正确的是【】。
A) C程序书写时,不区分大小写字母B) C程序书写时,一行只能写一个语句C) C程序书写时,一个语句可分成几行书写D) C程序书写时每行必须有分号3.下面对C语言特点,不正确描述的是【】。
A) C语言兼有高级语言和低级语言的双重特点,执行效率高B) C语言既可以用来编写应用程序,又可以用来编写系统软件C) C语言的可移植性较差D) C语言是一种结构式模块化程序设计语言4.C语言源程序的最小单位是【】。
A) 程序行B) 语句C) 函数D) 字符5.以下四项中属于C语言关键字的是【】。
A) CHAR B) define C) unsigned D) return6.十进制数2403转换成十六进制数为【】。
A) 963 B) 369 C) 953 D) 3597.二进制数00110101转换成八进制数是【】。
A) 055 B) 065 C) 056 D) 1528.将二进制数1011011.011转换成十进制数是【】。
A) 91.75 B) 91.375 C) 91.125 D) 91.259.计算机内部运算使用的数是【】。
A) 十进制数B) 十六进制数C) 二进制数D) 八进制数10.一个字长的二进制位数是【】。
A) 2个BYTE,即16个bit B) 3个BYTE,即24个bit C) 4个BYTE,即32个bit D) 随计算机系统不同而不同11.在C语言系统中,假设int类型数据占2个字节,则double、long、unsigned int、char 类型数据所占字节数分别多少【】。
A) 8,2,4,1 B) 2,8,4,1 C) 4,2,8,1 D) 8,4,2,112.下面程序段执行结果是【】。
int i=5,k;k=(++i)+(++i)+(i++);printf("%d,%d",k,i);A) 24,8 B) 21,8 C) 21,7 D) 24,713.下面程序段执行结果是【】。
C语言试卷(含答案)

一、单项选择题(每小题2分,共40分)1、sizeof(float)是()A. 一个双精度型表达式B. 一个整型表达式C. 一种函数调用D. 一个不合法的表达式2、设i是int型变量,f是float型变量,用下面的语句给这两个变量输入值: scanf("i=%d,f=%f",&i,&f);为了把100和分别赋给i和f,则正确的输入为()。
A. 100B. i=100,f=765.12C. 100<回车>D. x=100y=3、#include<>voidmain(){inta=3,b=2,c=1;intx=10,y=20;if(a<b)if(b!=0)if(!x)y=1;elseif(x)y=0;y=-1;printf("%d",y);}上面的C程序的输出结果是()。
A. 20B. 1C. 0D. -14、C语言中,while和do…while循环的主要区别是()。
A. do…while的循环体至少无条件执行一次B. while的循环控制条件比do…while的循环控制条件严格C. do…while允许从外部转到循环体内D. do…while的循环体不能是复合语句5、执行下面的C程序段后,输出结果是()。
inta=5;while(a--);printf("%d",a);A. 54321B. 4321C. 0D. -16、在C语言中,()是在所有函数外部声明的。
A. 全局变量B. 局部变量C. 形参D.实参7、分析下面的C程序:#include<>voidmain(){intnum=0;while(num<=2){num++;printf("%d",num);}}输出结果是()。
A. 123B. 012C. 23D. 128、下面的C语言代码段的输出结果是()。
C语言基础知识测试题-全面完整

基础知识测试题一.单项选择题1.以下不正确的C语言标识符是(D )A. ABCB. abcC. a_bcD. ab.c2.以下正确的C语言标识符是( C)A. %xB. a+bC. a123D. test!3.一个C语言程序的执行是从(A )。
A. main( )函数开始,直到main( )函数结束B. 第一个函数开始,直到最后一个函数结束C. 第一个语句开始,直到最后一个语句结束D. main( )函数开始,直到最后一函数结束4.在C语言程序中,main(C )的位置()。
A. 必须作为第一个函数B.必须作为最后一个函数C.任意D.必须放在它所调用的函数之后5.一个C语言程序是由(B )。
A. 一个主程序和若干个子程序组成B.一个或多个函数组成C.若干过程组成D.若干子程序组成6.C语言源程序的基本单位是(B)。
A. 过程B. 函数C. 子程序D. 标识符7.编辑程序的功能是(A)。
A. 建立并修改程序C.将C源程序编译成目标程序D.调试程序E.命令计算机执行指定的操作8.C编译程序是(D)。
A. C语言程序的机器语言版本B. 一组机器语言指.D. 将C源程序编译成目标程序的程序F. 由制造厂家提供的一套应用软件B9.不属于字符型常量的是( D )A.'A'B."B"C.'\n'D.'\x72'10 .设char ch; 以下正确的赋值语句是:(B )A.ch='123';B.ch='\xff';C.ch='\08';D.ch="\";11 .以下使i的运算结果为4的表达式是(D )A.int i=0,j=0;(i=3,(j++)+i);B.int i=1,j=0;j=i=((i=3)*2);C.int i=0,j=1;(j==1)?(i=1):(i=3);D.int i=1,j=1;i+=j+=2;A12 .若t为double类型,表达式t=1,t+5,t++的值是(D)A.1B.6.0 CC13.设整型变量m,n,a,b,c,d均为1,执行“(m=a>b)&&(n=a>b)”后m,n的值是( B)A.0,0B.0,1C.1,0D.1,1B14 .执行语句“x=(a=3,b=a--)”后,x,a,b的值依次为(CA.3,3,2B.3,2,2C.3,2,3D.2,3,2B15 .若a=1,b=2,c=3,d=4,则条件表达式a<b?a:a<d?c:d的值为(A )A.1B.2C.3D.416 .设int n=7;则++n+1= =9的结果是(C )A.trueB.falseC.1D.017 .设a=2,b=2;则++a+b的结果是(d),a的结果是(b),b的结果是(a)A.2B.3C.4D.518 .设a=2,则执行b=a==!a;语句后,b的结果是( A)A.0B.1C.2D.319 .设有以下语句,则c的二进制值是()char a=3,b=6,c;c=a^b<<2;A.00011011B.00010100C.00011100D.0001100020 .在C语言类型说明中,int、char、short等类型的长度是( A )A.固定的B.由用户自己定义的C.任意的D.与机器字的长度有关的二.填空题1.C语言中的标识符只能由三种字符组成,它们是、、。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单项选择题(本大题共20小题,每小题1分,共20分)1.C++源程序文件扩展名为(A)A..cppB..hC..1ibD..obj5.对使用关键字new所开辟的动态存储空间,释放时必须使用(C)A.free B.createC.delete D.realse6.从本质上看,引用是被引用变量的(B)A.拷贝B.别名C.复制D.克隆7.在函数调用时,如某一默认参数要指明一个特定值,则有(B)A.其之前所有参数都必须赋值B.其之后所有参数都必须赋值C.其前、后所有参数都必须赋值D.其前、后所有参数都不必赋值8.设存在函数int max(int,int)返回两参数中较大值,若求22,59,70三者中最大值,下列表达式不正确的是(C)A.int m=max(22,max(59,70));B.int m=max(max(22,59),70);C.int m=max(22,59,70);D.int m=max(59,max(22,70));9.设存在函数int min(int,int)返回两参数中较小值,若求15,26,47三者中最小值,下列表达式中错误的是(B)A.int m=min(min(15,26),min(15,47));B.int m=min(15,26,47);C.int m=min(15,min(47,26));D.int m=min(min(47,26),16);13.函数int&min(int&,int&)返回参数中较小者,设有两整型变量int a=10;int b=15;在执行语句min(a,b)--;之后,a,b值分别为(B)A.9,14B.9,15C.10,14D.10,1516.设函数void swap(int&,int&)将交换两形参的值,如两整型变量int a=10;int b=15;则执行swap(a,b)后,a、b值分别为(C)A.10,10B.10,15C.15,10D.15,1517.设函数void swap(int,int)将交换两形参数值,如有两整型变量int a=10;int b=15,则执行swap(a,b);之后,a,b值分别为(C)A.15,10B.15,15C.10,15D.10,1018.设函数void subone(int)将形参值减1,如有整形变量int b=10;则执行subone(b)后,b 的值为(B)A.9B.10C.11D.未知10.下列函数不能和函数void print(char)构成重载的是(C)A.int print(int);B.void print(char,char);C.int print(char);D.void print(int,int);15.函数int sum(int a=l,int b=1,int c=3)可与下列哪个函数同时声明(C)A.double sum(int);B.char sum(int,int);C.int sum(double);D.int sum(int,int,int);11.C++类中定义的成员默认访问属性为(B)A.publicB.privateC.protectedD.friend12.决定C++语言中函数的返回值类型的是(D)A.return语句中的表达式类型B.调用该函数时系统随机产生的类型C.调用该函数时的主调用函数类型D.在定义该函数时所指定的数据类型14.声明函数为内联函数时所使用的关键字为(B)A.constB.inlineC.shortD.signed19.声明函数int Func(int a=0,int b=3,int c=4)相当于声明了几个函数形式(A)A.1B.2C.3D.420.函数默认参数在函数原型中说明,默认参数必须放在参数序列的(C)A.前部B.中部C.后部D.两端21.下列哪个类型函数不适合声明为内联函数(A)A.函数体语句较多B.函数体语句较少C.函数执行时间较短D.函数执行时间过长22.int Func(int,int);不可与下列哪个函数构成重载(B)A.int Func(int,int,int);B.double Func(int,int);C.double Func(double,double);D.double Func(int,double);23.设函数void inc(int)将形参加1,如有整型变量int i=10;则执行inc(i);后,i的值为(B)A.9B.10C.11D.未知24.下列哪种默认参数的声明是不正确的(C)A.int max(int a,int b,int c,int d=0);B.int max(int a,int b,int c=0,int d=0);C.int max(int a=0,int b,int c=0,int d=0);D.int max(int a,int b=0,int c=0,int d=0);25.设int&max(int&,int&)返回两参数中较大者,如有两整型变量int a=10;int b=15;在执行max(a,b)++后,a,b值分别为(C)A.10,15B.11,15C.10,16D.1l,1626.包含哪种语句的函数不能声明为内联函数(A)A.循环B.变量自增自减C.if...else…D.变量声明*27.对类中声明的变量,下列描述中正确的是(C)A.属于全局变量B.只属于该类C.属于该类,某些情况下也可被该类不同实例所共享D.任何情况下都可被该类所有实例共享28.类的私有成员可在何处访问(D)A.通过子类的对象访问B.本类及子类的成员函数中C.通过该类对象访问D.本类的成员函数中29.如果没有为一个类定义任何构造函数的情况下,下列描述正确的是(A)A.编译器总是自动创建一个不带参数的构造函数B.这个类没有构造函数C.这个类不需要构造函数D.该类不能通过编译30.一个类可包含析构函数的个数是(B)A.0个B.1个C.至少一个D.0个或多个31.定义函数模板中使用的参数类型标识符需使用下列哪组符号括起来(A)A.<>B.“”C.()D.{}32.一个类拥有多个构造函数,则这些构造函数间为(A)A.重载关系B.重复关系C.拷贝关系D.无关系33.对于拷贝构造函数point::point(point&p),下列说明正确的是(C)A.该函数只能访问P的私有成员B.该函数不能访问P的公有成员C.该函数可以访问P的私有和公有成员D.该函数不能访问P的成员34.使用delete[]删除对象数组时,描述正确的是(A)A.数组中各元素都调用析构函数B.数组中各元素都调用构造函数C.不调用析构函数D.只有首元素调用析构函数35.this指针存在的目的是(B)A.保证基类公有成员在子类中可以被访问B.保证每个对象拥有自己的数据成员,但共享处理这些数据成员的代码C.保证基类保护成员在子类中可以被访问D.保证基类私有成员在子类中可以被访问36.下列关于类的权限的描述错误的是(A)A.类本身的成员函数只能访问自身的私有成员B.类的对象只能访问该类的公有成员C.普通函数不能直接访问类的公有成员,必须通过对象访问D.一个类可以将另一个类的对象作为成员37.设类A将其它类对象作为成员,则建立A类对象时,下列描述正确的是(B)A.A类构造函数先执行B.成员构造函数先执行C.两者并行执行D.不能确定*38.下列描述错误的是(A)A.在创建对象前,静态成员不存在B.静态成员是类的成员C.静态成员不能是虚函数D.静态成员函数不能直接访问非静态成员39.对于友元描述正确的是(B)A.友元是本类的成员函数B.友元不是本类的成员函数C.友元不是函数D.友元不能访问本类私有成员*40.在哪种派生方式中,派生类可以访问基类中的protected成员(B)A.public和private B.public和protectedC.protected和private D.仅protected41.内联函数的特点是(D)A.减少代码量,加快访问速度B.减少代码量,减缓访问速度C.增加代码量,减缓访问速度D.增加代码量,加快访问速度42.类的私有成员可在何处被访问(A)A.本类的成员函数中B.本类及子类的成员函数中C.通过对象名在任何位置D.不可访问43.假定MyClass为一个类,则该类的复制构造函数的声明语句为(C)A.MyClass&(MyClass x);B.MyClass(MyClass x);C.MyClass(MyClass&x);D.MyClass(MyClass*x);44.类的构造函数在以下什么情况下会被自动调用(B)A.定义成员函数时B.定义对象时C.定义数据成员时D.定义友元函数时45.下列关于析构函数描述正确的是(D)A.可以重载B.函数体中必须有delete语句C.返回类型必须是void类型D.不能指定返回类型46.设有函数T Sum(T x,T y){return x+y;},其中T为模板类型,则下列语句中对该函数错误的使用是(D)A.Sum(1,2);B.Sum(3.0,2.2);C.Sum(‘A’,‘C’);D.Sum("A","C");*47.关于类的静态成员函数描述错误的是(A)A.在创建对象前不存在B.不能说明为虚函数C.不能直接访问非静态函数D.不是对象的成员48.如果类A被声明成类B的友元,则(B)A.类A的成员即类B的成员B.类B的成员即类A的成员C.类A的成员函数不得访问类B的成员D.类B不一定是类A的友元49.派生类的对象可以访问以下那种情况继承的基类成员(B)A.私有继承的私有成员B.公有继承的私有成员C.私有继承的保护成员D.公有继承的公有成员50.函数模板template<typename T>void Func(T,T)可具有下列哪种实例化形式(B)A.void Func(float,int)B.void Func(char,char)C.void Func(int,double)D.void Func(bool,float)13.下列访问成员的方式哪个是正确的(A)A.对象名.对象成员名B.对象指针名.对象成员名C.对象名→对象成员名D.类名→对象成员名*51.对类A,复制构造函数的原型是(A)A.A::A(const A&);B.A::A(const A*);C.A::A(const A);D.A::A();52.对class point,如使用point*ptr=new point[2];创建对象数组,则删除此数组使用的语句是(B)A.delete ptr[2];B.delete[]ptr;C.delete ptr[];D.delete[2]ptr;53.下列哪个编译指令不属于条件编译指令(D)A.#ifB.#elseC.#endifD.#error54.类A中存在静态数据成员x,设a和b是类A的两个对象,在执行a.x=10之后,b.x的值为(B)A.未初始化B.等于a.xC.等于0D.随机55.使用string.h库操纵字符串时,将两个字符串连接成一个字符串的函数是(C)A.strlen()B.strcap()C.strcat()D.strcmp()56.基类中的public成员,通过public派生,其在派生类中的访问权限为(D)A.不可访问B.privateC.protectedD.public57.不同对象调用同名函数,但导致完全不同行为的现象称为(D)A.抽象B.封装C.继承D.多态性58.设类Test中存在成员static int x,则下列哪种初始化方式是正确的(C)A.Test::int x=25;B.int x=25;C.int Test::x=25;D.int Test x=25;59.下列关于友元的描述错误的是(C)A.成员函数不可作友元B.类可以作友元C.普通函数可以作友元D.静态函数可以作友元60.在继承中,派生类拥有的基类个数为(B)A.0个B.1个C.多个D.至少1个61.基类中的protected成员,通过public派生,其在派生类中的可见性为(D)A.不可访问B.privateC.protectedD.public62.下列哪个不是面向对象的关键要素(B)A.抽象性B.结构性C.封装性D.多态性63.设函数void subone(int&)将形参减1,如有整型变量int k=10,则执行subone(k);后,k的值为(A)A.9B.10C.11D.未知64.对函数int max(int a,int b=0,int c=0,int d=0,int e=0);下列调用方式正确的是(A)A.int m=max(10,11,12,13,14);B.int m=max(10,,12,13,14);C.int m=max(10,1l,,13,14);D.int m=max(10,11,12,,14);65.类MyClass的定义如下:class MyClass{public:MyClass(){}MyClass(int i){value=new int(i);}int*value;};若要对value赋值,则下面语句正确的是(B、D)A.MyClass my;my.value=10;B.MyClass my;*my.value=10;C.MyClass my;my.*value=10;D.MyClass my(10);66.包含哪种语句的函数不能声明为内联函数(D)A.变量定义B.if……elseC.位操作D.switch67.声明函数模板的关键字是(B)A.inlineB.templateC.constD.short68.对于类中的成员,使用public修饰,表明该成员的访问权限是(A)A.公有的B.私有的C.保护的D.不可见的*69.一个类中是否可以允许一个无参数构造函数和一个全部都是默认参数的构造函数共存(B)A.不允许B.允许C.无法确定D.视构造函数的函数,可确定70.析构函数的参数个数为(A)A.0个B.1个C.至少1个D.多于1个71.非静态成员函数都会有一个隐含指针,它是(B)A.self指针B.this指针C.current指针D.one指针72.下列访问公有静态成员的方式,错误的是(A)A.类名::静态成员名B.对象名.静态成员名C.对象指针->静态成员名D.对象指针.静态成员名73.声明友元使用下列哪个关键字(C)A.class B.constC.friend D.virtual74.派生类继承了基类的(A)A.所有成员B.部分成员C.数据成员D.成员函数75.基类private成员,通过public派生,其在派生类中为(A)A.private B.protectedC.public D.不可访问76.在哪种派生方式中,派生类可以访问基类中的protected成员(B)A.public和privateB.public和protectedC.protected和privateD.仅protected77.对使用关键字new所开辟的动态存储空间,释放时必须使用(C)A.freeB.createC.deleteD.realse78.对于new类型名[size]描述正确的是(C)A.申请可以存储size个字节的空间B.申请可以存储1个该数据类型的空间C.申请可以存储size个该数据类型对象的空间D.申请可以存储1个字节的空间79.构造函数用于(B)A.定义对象B.初始化对象C.清除对象D.普通计算80.C++中专门定义一个仅在模板中使用的参数类型的关键字是(D)A.const B.inlineC.short D.typename81.对于类中的成员,使用private修饰,表明该成员的访问权限是(B)A.公有的B.私有的C.保护的D.不可见的82.使用new创建的对象,对其生命周期描述正确的是(B)A.由系统决定B.由用户控制C.全局生命周期D.永久存在83.析构函数被调用的时间点是(B)A.对象被创建时B.对象被销毁时C.不会被调用D.主函数被调用时*84.对象的构造函数调用顺序取决于(C)A.对象成员在初始化列表中给出的顺序B.对象成员在类中声明的顺序C.对象成员与在初始化列表中顺序和类中声明顺序均有关D.随机顺序85.下列对静态成员函数描述正确的是(B)A.静态成员函数中可使用1个this指针B.静态成员函数中不能使用this指针C.静态成员函数中可使用多个this指针D.静态成员函数中只可使用1个that指针86.友元的声明可出现在(B)A.类的私有部分B.类的公有部分C.类的保护部分D.类的任何部分*87.在下列派生中,子类和父类间是isa关系的是()A.private B.protectedC.public D.publish88.面向对象不仅进行功能抽象,还要进行(C)A.动态抽象B.消息抽象C.数据抽象D.算法抽象89.如声明对象数组,则下列描述正确的是(A)A.对每个元素均调用一次构造函数B.部分元素调用构造函数,其它元素不需调用C.均不需要调用构造函数D.只是首元素调用构造函数*90.不同对象调用同一成员函数时,this指针指向(A)A.不同对象B.相同对象C.无对象D.不确定*91.一个类可拥有多少个构造函数(C)A.0个B.1个C.1或多个D.以上皆对92.下列哪个要素不是面向对象的关键要素(A)A.模块化B.抽象性C.封装性D.继承性93.下列对于类的描述错误的是(C)A.类要先声明后使用B.类是具有唯一标识的实体C.两个类可以使用同一个名称D.组成类的不仅有数据,还可以有对数据进行操作的函数*94.使用引用调用方式将实参传给形参,下列说法正确的是(A)A.形参是实参的备份B.实参是形参的备份C.形参和实参共享同一对象D.形参和实参无联系95.关于对象的性质,下列描述错误的是(B)A.同一类对象之间可相互赋值B.不能使用对象数组C.对象可以用作函数参数D.一个对象可以用作另一个类的成员96.类的私有成员可在哪里被赋值(B)A.类体中B.该类的成员函数中C.A和BD.以上都不是97.派生类中继承的基类成员初始化如何进行(A)A.由派生类构造函数调用基类的构造函数进行B.由派生类构造函数进行C.由基类构造函数进行,无需派生类构造函数调用D.以上皆不正确98.对于多重继承,下列描述正确的是(B)A.所有基类使用相同的派生方式B.每个基类可使用不同派生方式C.只能是public派生D.只能是protected派生99.下列关于类的权限描述错误的是(B)A.类本身的成员函数可以访问自身的任何成员B.类的对象可以访问该类的所有成员C.普通函数不能直接访问类的公有成员,必须通过成员函数对其访问D.一个类可以将另一个类的对象作为成员100.运算符delete与哪个函数一起运行(B)A.构造函数B.析构函数C.主函数D.不与任何函数一起工作101.一个类可以获得另一个类的特性的机制称为(C)A.抽象B.封装C.继承D.多态性102.对引用调用描述正确的是(B)A.分配新存储空间B.修改已存储空间的名称为引用名C.引用名与已存在存储空间无任何关联D.将引用名标识符与一块已存在储区域相关联,没有分配新存储空间。