C++期末复习--1.练习题_选择汇总

合集下载

C语言程序设计期末复习题及答案(1)

C语言程序设计期末复习题及答案(1)
4. 设int i = 5;则语句while (i > = 1) i - -;执行后i的值为_0______。
5. n为整型,表达式n=1,n+2,n*5 的值是__5_______。
6. 已知:float x=8.53; 整形变量i=(int)x;则i=__8_____。
7. 已知:int x=5;语句y=x++*x++;执行完成后x=___7__,y=_25____。
int i, k, num;
gets(str1); gets(str2);
i=strlen(str1);
k=strlen(str2);
num=______? ____: ____;
printf("%d\n", num);
}
2. 下面程序是计算字符串中实际字符的个数,即实现和字符串处理函数strlen相同的功能,补充空白处的程序。
for (j=0;j<n-1-i;j++)
if (a[j]>a[j+1])
{c=a[j];a[j]=a[j+1];a[j+1]=c;}
}
2. 本题20分.总体程序完整性3分,结构体定义正确3分,结构体数组定义以及初始化正确6分,指针定义正确3分,输出判断正确3分,输出姓名地址2分。以下代码为参考代码,答案不唯一。
(B)在指针操作中,运算符“&”是取指针指向的对象的值。
(C)在指针操作中,运算符“*”的操作对象是一个地址。
(D)语句int *ip;定义了指针变量只能存放整型变量的地址。
14.判断字符串str1是否大于字符串str2,应当使用___d________。
(A)if (str1>str2)

期末复习练习题-部编版道德与法治九年级下册

期末复习练习题-部编版道德与法治九年级下册

部编版九年级下册道德与法治综合练习题(二)(含答案)一、选择题1.阅读下表,下列说法正确的是()选项中国GDP总量占世界经济比重在全球排名1978年3 679亿元 1.7% 第11位2021年1 015 986亿元17%左右第2位(注:我国人均GDP仍略低于世界平均水平)①改革开放是强国富民之路②我国综合国力显著增强,国际地位不断提升③我国已是世界第二大经济体,与主要发达国家相比差距不大④中国为世界经济增长注入新活力,成为世界经济发展的稳定器A.①②③B.②③④C.①②④D.①③④2.2022年2月25日,全国脱贫攻坚总结表彰大会在北京举行。

民族要复兴,乡村必振兴。

在脱贫攻坚取得历史性巨大胜利的同时,习近平总书记鲜明提出了全面推进乡村振兴这一重大历史战略,实施这一战略的意义在于()①缩小城乡区域发展差距②实现城乡同步富裕③彻底解决社会主要矛盾④城乡共享发展成果A.①②B.②③C.②④D.①④3.从“天问”探测火星到北斗组网,从“嫦娥”奔月到万米深潜……一项项前沿科技成果引起全球关注。

然而,部分关键元器件、原材料依赖进口,生物医药和医疗设备等领域科技发展滞后问题也日益显现。

材料反映了()A.我国已经建成创新型国家B.我国的科技发展水平已经超越发达国家C.科技创新能力已成为综合国力竞争的唯一因素D.我国的科技事业取得了举世瞩目的成就,但仍然面临创新能力不强等问题4.为了切实听取社会各界对政府工作的意见建议,中国政府网于2021年12月1日至2022年全国两会期间,开展了2022“我向总理说句话”网民建言征集活动。

开展建言征集活动()①使信息技术成为权力监督的主体②拓宽了公民参与民主生活的途径③扩大了公民直接管理国家的民主权利④体现了社会主义民主的本质是人民当家作主A.①③B.②③C.②④D.③④5.中共中央印发《法治中国建设规划(2021-2025年)》,指出法治是人类文明进步的重要标志,是治国理政的基本方式。

C语言练习题-选择题(带答案)

C语言练习题-选择题(带答案)

C语言练习题-选择题(带答案)1.下列字符序列中,可用作C标识符的一组字符序列是(D)。

A:S.b,um,average,_aboveB:cla,day,lotu_1,2dayC:#md,&12某,month,tudent_n!D:D56,r_1_2,name,_t_12.C语言程序从main()函数开始执行,所以这个函数要写在(C).A:程序文件的开始B:程序文件的最后C:程序文件的任何位置(除别的函数体内)D:它所调用的函数的前面3.完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行的步骤依次为(B).A:连接、编译B:编译、连接C:连接、运行D:运行4.要调用文件处理函数时,在#include命令行中应包含(C).A:\5.以下数据中,不正确的数值或字符常量是(C)。

A:0B:5LC:o13D:98616.在C语言中,错误的语句是(C).A:a=b=c;B:;C:breakD:b=3某5,a某=4;7.以下标识符中,不能作为合法的C用户定义标识符的是(B)。

A:a3_b3B:voidC:_123D:IF8.一个C语言程序是由(C)组成.A:一个主程序和若干子程序B:函数C:若干过程D:若干子程序9.C语言源程序的基本单位是(B)。

A:过程B:函数C:子程序D:标识符10.已知宏定义#defineN3#defineY(n)((N+1)某n)执行语句z=2某(N+Y(5+1));变量z的值为(B).A:42B:48C:54D:出错第11题C语言文件系统中,整数1008若以ASCII形式存储,则占几个字节(B).A:2B:4C:1D:5第12题正确的自定义标识符是(C).A:ifB:a某bC:IfD:8pq第13题有说明语句chara='\\101';,则变量a(D).A:包含4个字符B:包含2个字符C:包含3个字符D:包含1个字符第14题下面正确的字符常量是(C).A:\第15题在main函数体内部和外部均允许出现的实体是(A).A:预处理命令B:语句C:另一函数的定义D:函数形式参数声明第16题若变量已正确说明为float类型,要通过语句canf(\给a赋于10.0,b赋予22.0,c赋予33.0,不正确的输入形式是(B).A:102233B:10.0,22.0,33.0C:10.022.033.0第17题(B)是C语言提供的合法数据类型关键字.A:FloatB:ignedC:integerD:Char第18题下列选项中,合法的C语言关键字是(D).A:VARB:cherC:integerD:default第19题使用语句canf(\输入变量某,y的值([]代表空格),正确的输入是(C).A:1.25,2.4B:1.25[]2.4C:某=1.25,y=2.4D:某=1.25[]y=2.4第20题宏定义\\的宏替换\应为(A).A:a=某+5某y-3.1;B:a=(某+5)某(y-3.1);C:a=某+5某y-3.1D:a=(某+5)某(y-3.1)答案:A第21题(1.0分)题号:919下述程序段的输出结果是(A).int某=10;inty=某++;printf(\A:11,10B:11,11C:10,10D:10,11答案:A第22题(1.0分)题号:925以下不正确的C语言标识符是(A).A:2yB:a_1_2C:able某eD:_某答案:A第23题(1.0分)题号:914以下所列的C语言常量中,错误的是(B).A:0某ffB:1.2e0.5C:2LD:'\\72'答案:B第24题(1.0分)题号:918下列程序的输出是(B).#includemain(){printf(\A:0B:变量无定义C:-1D:1答案:B第25题(1.0分)题号:930在C程序中,1如果用来表示逻辑值时,应代表(A).A:真B:假C:整数1D:长整型数1答案:A第26题(1.0分)题号:927以下答案中不是C语言最基本数据类型的是(A).A:逻辑型B:整型C:字符型D:实型答案:A第27题(1.0分)题号:922常数的书写格式决定了常数的类型和值,0某1011是(C).A:8进制整型常量B:字符常量C:16进制整型常数D:2进制整型常数答案:C第28题(1.0分)题号:928若某,y均定义为int型,z为double型,以下不合法的canf函数调用语句是(D).A:canf(\\B:canf(\\C:canf(\\D:canf(\\答案:D第29题(1.0分)题号:931以下所列字符常量中,不合法的是(A).A:'\\0某a2'B:'\\65'C:'$'D:'\\某2a'答案:A第30题(1.0分)题号:912若变量都已正确说明,则以下程序段(C).a=2;b=3;printf(a>b\A:没有正确的输出格式控制B:输出为:某某某a=2C:输出为:###b=2D:输出为:某某某a=2###b=3答案:C第31题(1.0分)题号:929以下四个字符序列中,能用作用户自定义的标识符是(A).A:PutcharB:-doubleC:A123-D:int答案:A第32题(1.0分)题号:923下列格式符中,可以用于以8进制形式输出整数的是(C).A:%dB:C:%oD:答案:C第33题(1.0分)题号:936以下叙述中正确的是(D).A:输入项可以是一个实型常量,如:canf(\B:只有格式控制,没有输入项,也能正确输入数据到内存,例如:canf(\ C:当输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如:canf(\D:当输入数据时,必须指明变量地址,例如:canf(\答案:D第34题(1.0分)题号:926C语言中字符型(char)数据在内存中的存储形式是(D).A:原码B:补码C:反码D:ASCII码答案:D。

C语言期末练习题-1

C语言期末练习题-1

C语言期末练习题-1一、阅读程序,选择输出结果1.下面程序的运行结果是_______。

b#includeint main( ){ char m ;m = 'B' + 32 ;printf( "%c\n" , m ) ;return 0 ;}2.下面程序的运行结果是_______。

0#includeint main( ){ int x = 3 , y = 5 ;printf( "%d\n" , x / y ) ;return 0 ; }3.下面程序的运行结果是_______。

x=1 y=2 *sum*=310 squared is :100 #includeint main( ){ int x = 1 , y = 2 ;printf( "x=%d y=%d *sum*=%d\n" , x , y , x + y ) ; printf( "10 squared is : %d\n" , 10 * 10 ) ;return 0 ; }4.下面程序的运行结果是_______。

x+y+z=48运行时从键盘输入:25 13 10↙。

#includeint main( ){ int x , y , z ;scanf( "%d%d%d" , &x , &y , &z ) ;printf( "x+y+z=%d\n" , x + y + z ) ;return 0 ; }5.下面程序的运行结果是_______。

55,,A 运行时从键盘输入:55 A B↙。

#includeint main( ){ int k = 0 ; char c1 = 'a' , c2 = 'b' ; scanf("%d%c%c" , &k , &c1 , &c2 ) ; printf( "%d,%c,%c\n" , k , c1 , c2 ) ; return 0 ;}6.下面程序的运行结果是_______。

C语言期末考试题目2

C语言期末考试题目2

指针一、单项选择题1。

已知:int a,*y=&a;则下列函数调用中错误的是。

A) scanf("%d”, &a);B)scanf("%d”,y);C)printf("%d", a);D) printf("%d",y);2。

说明语句”int (*p)();"的含义是。

A) p是一个指向一维数组的指针变量B) p是指针变量,指向一个整型数据C)p是一个指向函数的指针,该函数的返回值是一个整型D) 以上都不对3. 设有说明int (*p)[4];其中的标识符p是。

A)4个指向整型变量的指针变量B) 指向4个整型变量的函数指针C) 一个指向具有4个整型元素的一维数组的指针D)具有4个指向整型变量的指针元素的一维指针数组4。

已知:char s[10], *p=s,则在下列语句中,错误的语句是.A) p=s+5;B)s=p+s;C) s[2]=p[4];D)*p=s[0];5。

已知:char s[100];int i;则引用数组元素的错误的形式是.A) s[i+10]B)*(s+i)C) *(i+s)D) *((s++)+i)6。

已知:char s[6], *ps=s;则正确的赋值语句是。

A)s="12345";B)*s=”12345"; C)ps=”12345";D)*ps=”12345”;7。

已知:char a[3][10]={”BeiJing”,"ShangHai","TianJin"},*pa=a;不能正确显示字符串"ShangHai”的语句是。

A)printf(”%s”,a+1);B) printf("%s",*(a+1));C)printf(”%s",*a+1);D)printf(”%s",&a[1][0]);8。

大学C语言期末考试练习题(带详解答案)

大学C语言期末考试练习题(带详解答案)

大学C语言期末考试练习题(带详解答案)一、单项选择题1.(A)是构成C语言程序的基本单位。

A、函数B、过程C、子程序D、子例程2.C语言程序从C开始执行。

A)程序中第一条可执行语句B)程序中第一个函数C)程序中的main函数D)包含文件中的第一个函数3、以下说法中正确的是(C)。

A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main()函数中定义C、C语言程序总是从main()函数开始执行D、C语言程序中的main()函数必须放在程序的开始部分4.下列关于C语言的说法错误的是(B)A)C程序的工作过程是编辑、编译、连接、运行B)C语言不区分大小写。

C)C程序的三种基本结构是顺序、选择、循环D)C程序从main函数开始执行5.下列正确的标识符是(C)。

A.-a1B.a[i]C.a2_iD.intt5~8题为相同类型题考点:标识符的命名规则(1)只能由字母、数字、下划线构成(2)数字不能作为标识符的开头(3)关键字不能作为标识符选项A中的“-”,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是(B)。

A)3a某B)某C)caeD)-e2E)union选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);7.下列四组选项中,正确的C语言标识符是(C)。

A)%某B)a+bC)a123D)123选项A中的“%”,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。

A、print_3ddb8aBcB、I\\amone_halftart$it3paiC、tr_1CpppowwhileD、P某qMy->bookline#Hi.age选项B中的“\\”,”$”,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3)9.C语言中的简单数据类型包括(D)。

cpp期末复习题

cpp期末复习题

C++练习题一一、选择题1.C++源程序文件扩展名为( )。

A..h B..cpp C..1ib D..obj2.在C++中使用流进行输入输出,其中专用于从键盘进行输入的流是( )。

A.cin B.cout C.cerr D.clog3.对于类中没有设置访问属性的数据成员,其默认为( )。

A.public B.protected C.private D.static4.下列关于类和对象的叙述中,错误的是( )。

A.一个类只能有一个对象B.对象是类的具体实例C.类是对某一类对象的抽象D.类和对象的关系是一种数据类型与变量的关系5.类的构造函数是在定义该类的一个( )时被自动调用执行的。

A. 成员函数B. 数据成员C. 对象D. 友元函数6.派生类的对象可以访问以下哪种情况继承的基类成员( )。

A.私有继承的私有成员B.公有继承的私有成员C.私有继承的保护成员D.公有继承的公有成员7.int Func(int,int);不可与下列哪个函数构成重载( )。

A.int Func(int,int,int);B.double Func(int,int);C.double Func(double,double);D.double Func(int,double);8.假定AA为一个类,int a()为该类的一个成员函数,若该成员函数在类定义体外定义,则函数头为( )。

A.int AA::a() B.int AA:a()C.AA::a() D.AA::int a()9.设函数void swap(int,int)将交换两形参的值,如两整型变量int a=10;int b=15;则执行swap(a,b)后,a、b值分别为( )。

A.10,10 B.10,15C.15,10 D.15,1510.当一个类A或函数f()被声明为另一个类B的友元后,类A或函数f()能够直接访问类B的( )。

A.只能是公有成员B.只能是保护成员C.只能是除私有成员之外的任何成员D.任何权限的成员二、填空题1.若要在程序文件中进行标准输入输出操作,则必须在开始的#include命令中使用_________头文件。

德州学院二级C语言期末复习题

德州学院二级C语言期末复习题

C语言练习题一、单项选择题1.以下选项中合法的标示符是()A.1_1B.1-1C._11D. 1_ _2.若有以下类型说明语句:char a; int b; float c; short int d;则表达式(c*b+a)*d的结果类型是()。

A.charB.intC.doubleD.float3.算术运算符、赋值运算符和关系运算符的运算优先级按从高到低的顺序依次为()。

A.算术运算、赋值运算、关系运算B.关系运算、赋值运算、算术运算C.算术运算、关系运算、赋值运算D.关系运算、算术运算、赋值运算4.多重if_else语句嵌套使用时,寻找与else配套的if方法是( )。

A.缩排位置相同的ifB.其上最近的ifC.下面最近的ifD.同行上的if5.有以下程序,其运行后的输出结果是()。

main(){int x=1,y=2;x=x+y,y=x-y; x=x-y;printf("x=%d,y=%d \n",z);}A. 1 2B. 1,2C. 0,1D. 2,1 6.有以下程序,其中%u表示按无符号整数输出main(){unsigned short x=0xFFFF;printf("%u\n",x);}程序运行后的输出结果是()。

A.-1B.65535C.32767D.0xFFFF 7.以下合法的c语言语句是( B )。

A. x=int(x+0.5);B. ++k;C. a=b=0D. a=1,8.下面有关for循环的正确描述是( D ) 。

A. for循环只能用于循环次数已经确定的情况。

B. for循环是先执行循环体语句,后判断表达式。

C. 在for循环中,不能用break语句跳出循环体。

D. for循环的循环体语句,可以包含多条语句,但必须用花括号括起来。

9.有以下程序,其运行后的输出结果是( C )。

main(){int x=1,y=2,z;z= x/y;printf("%d\n",z);}A. 1/2B. 0.5C. 0D. 110.下列对字符串的操作正确的是( C)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

面向对象程序设计综合练习(单选题)单选题1.C++源程序文件的缺省扩展名为( )。

A. cppB. exeC. objD. lik2.程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用( )符号作为分隔符。

A. 空格或逗号B. 逗号或回车C. 逗号或分号D. 空格或回车3.关于封装,下列说法中不正确的是()。

A. 通过封装,对象的全部属性和操作结合在一起,形成一个整体B. 通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)C. 通过封装,每个对象都成为相对独立的实体D. 通过封装,对象的属性都是不可见的4.面向对象软件开发中使用的OOA表示()。

A. 面向对象分析B. 面向对象设计C. 面向对象语言D. 面向对象方法5.面向对象软件开发中使用的OOD表示()。

A. 面向对象分析B. 面向对象设计C. 面向对象语言D. 面向对象方法6.在一个类的定义中,包含有()成员的定义。

A. 数据B. 函数C. 数据和函数D. 数据或函数7.在类作用域中能够通过直接使用该类的()成员名进行访问。

A. 私有B. 公用C. 保护D. 任何8.在关键字public后面定义的成员为类的()成员。

A. 私有B. 公用C. 保护D. 任何9.在关键字private后面定义的成员为类的()成员。

A. 私有B. 公用C. 保护D. 任何10.假定AA为一个类,a为该类公有的数据成员,x为该类的一个对象,则访问x对象中数据成员a的格式为()。

A. x(a)B. x[a]C. x->aD. x.a11.假定AA为一个类,a()为该类公有的成员函数,x为该类的一个对象,则访问x对象中成员函数a()的格式为()。

A. x.aB. x.a()C. x->aD. x->a()12.假定AA为一个类,a为该类公有的数据成员,px为指向该类对象的一个指针,则访问px所指对象中数据成员a的格式为()。

A. px(a)B. px[a]C. px->aD. px.a13.假定AA为一个类,a为该类私有的数据成员,GetValue()为该类公有成员函数,它返回a的值,x为该类的一个对象,则访问x对象中数据成员a的格式为()。

A. x.aB. x.a()C. x->GetValue()D. x.GetValue()14.假定AA为一个类,int a()为该类的一个成员函数,若该成员函数在类定义体外定义,则函数头为()。

A. int AA::a()B. int AA:a()C. AA::a()D. AA::int a()15.假定AA为一个类,a为该类公有的数据成员,若要在该类的一个成员函数中访问它,则书写格式为()。

A. aB. AA::aC. a()D. AA::a()16.若需要把一个类外定义的成员函数指明为内联函数,则必须把关键字()放在函数原型或函数头的前面。

A. inB. inlineC. inLineD. InLiner17.在多文件结构的程序中,通常把类的定义单独存放于()中。

A. 主文件B. 实现文件C. 库文件D. 头文件18.在多文件结构的程序中,通常把类中所有非内联函数的定义单独存放于()中。

A. 主文件B. 实现文件C. 库文件D. 头文件19.在多文件结构的程序中,通常把含有main()函数的文件称为()。

A. 主文件B. 实现文件C. 程序文件D. 头文件20.一个C++程序文件的扩展名为()。

A. .hB. .cC. .cppD. .cp21.在C++程序中使用的cin标识符是系统类库中定义的()类中的一个对象。

A. istreamB. ostreamC. iostreamD. fstream22.在C++程序中使用的cout标识符是系统类库中定义的()类中的一个对象。

A. istreamB. ostreamC. iostreamD. fstream23.一个类的构造函数通常被定义为该类的( )成员。

A. 公用B. 保护C. 私有D. 友元24.一个类的析构函数通常被定义为该类的( )成员。

A. 私有B. 保护C. 公用D. 友元25.假定AB为一个类,则执行“AB x;”语句时将自动调用该类的( )。

A. 带参构造函数B. 无参构造函数C. 拷贝构造函数D. 赋值重载函数26.假定AB为一个类,则执行“AB x(a,5);”语句时将自动调用该类的( )。

A. 带参构造函数B. 无参构造函数C. 拷贝构造函数D. 赋值重载函数27.假定AB为一个类,则执行“AB *s=new AB(a,5);”语句时得到的一个动态对象为_______。

A. sB. s->aC. s.aD. *s28.假定AB为一个类,则执行“AB r1=r2;”语句时将自动调用该类的( )。

A. 无参构造函数B. 带参构造函数C. 赋值重载函数D. 复制(拷贝)构造函数29.若需要使类中的一个指针成员指向一块动态存储空间,则通常在( )函数中完成。

A. 析构B. 构造C. 任一成员D. 友元30.当类中的一个整型指针成员指向一块具有n*sizeof(int)大小的存储空间时,它最多能够存储( )个整数。

A. nB. n+1C. n-1D. 131.假定一个类的构造函数为“A(int aa, int bb) {a=aa; b=aa*bb;}”,则执行“Ax(4,5);”语句后,x.a和x.b的值分别为( )。

A. 4和5B. 5和4C. 4和20D. 20和532.假定一个类的构造函数为“A(int aa=1, int bb=0) {a=aa; b=bb;}”,则执行“Ax(4);”语句后,x.a和x.b的值分别为( )。

A. 1和0B. 1和4C. 4和1D. 4和033.假定AB为一个类,则( )为该类的拷贝构造函数的原型说明。

A. AB(AB x);B. AB(AB& x);C. void AB(AB& x);D. AB(int x);34.假定一个类的构造函数为“B(int ax, int bx): a(ax), b(bx) {}”,执行“Bx(1,2),y(3,4);x=y;”语句序列后x.a的值为( )。

A. 1B. 2C. 3D. 435.假定AB为一个类,则执行“AB a(2), b[3], *p[4];”语句时共调用该类构造函数的次数为( )。

A. 3B. 4C. 5D. 936.假定AB为一个类,则执行“AB a, b(2), c[3], *p=&a;”语句时共调用该类无参构造函数的次数为( )。

A. 5B. 6C. 3D. 437.假定AB为一个类,则执行“AB *p=new AB(1,2);”语句时共调用该类构造函数的次数为( )。

A. 0B. 1C. 2D. 338.假定AB为一个类,px为指向该类的一个含有n个对象的动态数组的指针,则执行“delete []px;”语句时共调用该类析构函数的次数为( )。

A. 0B. 1C. n-1D. n+139.对类对象成员的初始化是通过构造函数中给出的( )实现的。

A. 函数体B. 初始化表C. 参数表D. 初始化表或函数体40.对类中常量成员的初始化是通过构造函数中给出的( )实现的。

A. 函数体B. 参数表C. 初始化表D. 初始化表或函数体41.对类中引用成员的初始化是通过构造函数中给出的( )实现的。

A. 函数体B. 参数表C. 初始化表D. 初始化表或函数体42.类的构造函数可以带有( )个参数。

A. 0B. 1C. 2D. 任意43.类的析构函数可以带有( )个参数。

A. 0B. 1C. 2D. 任意44.一个类的静态数据成员所表示属性 ( )。

A. 是类的或对象的属性B. 只是对象的属性C. 只是类的属性D. 类和友元的属性45.类的静态成员的访问控制()。

A. 只允许被定义为privateB. 只允许被定义为private或protectedC. 只允许被定义为publicD. 可允许被定义为private、protected或public46.静态成员函数对类的数据成员访问()。

A. 是不允许的B. 只允许是静态数据成员C. 只允许是非静态数据成员D. 可允许是静态数据成员或非静态数据成员47.一个类的友元不是该类的成员,与该类的关系密切,所以它()。

A. 有this指针,有默认操作的对象B. 没有this指针,可以有默认操作的对象C. 有this指针,不能执行默认操作D. 没有this指针,也就没有默认操作的对象48.在重载一个运算符时,其参数表中没有任何参数,这表明该运算符是()。

A. 作为友元函数重载的1元运算符B. 作为成员函数重载的1元运算符C. 作为友元函数重载的2元运算符D. 作为成员函数重载的2元运算符49.在成员函数中进行双目运算符重载时,其参数表中应带有()个参数。

A. 0B. 1C. 2D. 350.双目运算符重载为普通函数时,其参数表中应带有()个参数。

A. 0B. 1C. 2D. 351.如果表达式a+b中的“+”是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为()。

A. a.operator+(b)B. b.operator+(a)C. operator+(a,b)D. operator(a+b)52.如果表达式a==b中的“==”是作为普通函数重载的运算符,若采用运算符函数调用格式,则可表示为()。

A. a.operator==(b)B. b.operator==(a)C. operator==(a,b)D. operator==(b,a)53.如果表达式a++中的“++”是作为普通函数重载的运算符,若采用运算符函数调用格式,则可表示为()。

A. a.operator++()B. operator++(a)C. operator++(a,1)D. operator++(1,a)54.如果表达式++a中的“++”是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为()。

A. a.operator++(1)B. operator++(a)C. operator++(a,1)D. a.operator++()55.关于运算符重载,下列说法正确的是()。

A. 重载时,运算符的优先级可以改变。

B. 重载时,运算符的结合性可以改变。

C. 重载时,运算符的功能可以改变。

D. 重载时,运算符的操作数个数可以改变。

56.关于运算符重载,下列说法正确的是()。

A. 所有的运算符都可以重载。

B. 通过重载,可以使运算符应用于自定义的数据类型。

C. 通过重载,可以创造原来没有的运算符。

D. 通过重载,可以改变运算符的优先级。

相关文档
最新文档