C++选择题复习.docx
- 文档编号:15338755
- 上传时间:2023-07-03
- 格式:DOCX
- 页数:13
- 大小:21.14KB
C++选择题复习.docx
《C++选择题复习.docx》由会员分享,可在线阅读,更多相关《C++选择题复习.docx(13页珍藏版)》请在冰点文库上搜索。
C++选择题复习
单项选择题
以下各题均有A、B、C、D四个答案可供选择,但只有一个是最合适的即正确的。
请选择正确的答案。
1、一个字节的二进制位数是___C_____
(A)2(B)4(C)8(D)16
2、一个C++程序是由____A____开始执行的。
(A)主函数(B)主过程(C)子程序(D)主程序
3、以下选项中可作为C++合法标识符的是___D_____
(A)Line#1(B)88_xx(C)double(D)sign
4、以下选项中可作为C++合法标识符的是____A____
(A)back2u(B)return(C)666_XX(D)sum#168
5、以下选项中可作为C++合法标识符的是___C_____
(A)cash$6(B)99_yy(C)bread(D)break
6、以下选项中可作为C++合法标识符的是___B_____
(A)long(B)fox_2(C)9_dog(D)Line1
7、用VC++6.0编译C++程序时,一个double类型变量占__B___字节内存。
(A)10(B)8(C)4(D)2
8、用VC++6.0编译C++程序时,给一个float类型变量分配___C___字节内存。
(A)1(B)2(C)4(D)8
9、用VC++6.0编译C++程序时,给一个long类型变量分配__C____字节内存。
(A)1(B)2(C)4(D)8
10、用VC++6.0编译C++程序时,给一个int类型变量分配__C____字节内存。
(A)8(B)4(C)2(D)1
11、一个char类型变量的取值范围为_____D___
(A)0至255(B)0至65535
(C)-32768至32767(D)-128至127
12、一个unsignedchar类型变量的取值范围为___A_____
(A)0至255(B)0至65535
(C)-32768至32767(D)-128至127
13、一个short类型变量的取值范围为_____C___
(A)0至255(B)0至65535
(C)-32768至32767(D)-128至127
14、一个unsignedshort类型变量的取值范围为__B______
(A)0至255(B)0至65535
(C)-32768至32767(D)-128至127
15、在以下选项中可作为C++合法常量的是___B_____
(A)2e(B)-0.09(C)3e2.1(D)e5
16、在以下选项中可作为C++合法常量的是___D_____
(A)2e(B)e5(C)3e2.1(D)3.14
17、在以下选项中可作为C++合法常量的是___A_____
(A)2.1e3(B)3e2.1(C)e5(D)π
18、在以下选项中可作为C++合法常量的是____C____
(A)e3(B)3e2.1(C)-4.5e+6(D)π
19、在以下选项中不能作为C++合法常量的是__D______
(A)3.14(B)7.8e-9(C)-4.5e+6(D)π
20、在C++中运算对象必须是整型的运算符是__A______
(A)%=(B)*(C)/(D)==
21、在C++中运算对象必须是整型的运算符是___D_____
(A)||(B)&&(C)/(D)%
22、在以下选项中,运算符优先级最低的是____A____
(A)*=(B)!
=(C)++(D)>=
23、在以下选项中,运算符优先级最低的是___B_____
(A)&(B)=(C)/(D)==
24、在以下选项中,运算符优先级最低的是___C_____
(A)&&(B)=(C),(D)==
25、在以下选项中,运算符优先级最低的是___D_____
(A)&&(B)<(C)||(D)+=
26、下面正确的字符常量是D
(A)“c“(B)’\\’’(C)“”(D)’W’
27、在以下选项中,运算符优先级最高的是____B____
(A)>(B)*(C)%=(D)||
28、在以下选项中,运算符优先级最高的是___D_____
(A)<(B)%(C)>>(D)++
29、在以下选项中,运算符优先级最高的是__C______
(A)>=(B)/=(C)%(D)<<
30、字符型数据在内存中常用的二进制编码方式是__C______
(A)补码(B)原码(C)ASCII码(D)反码
31、C++与C语言相比,它在求解问题的方法上进行的最大改进是C
(A)面向过程(B)复用性(C)面向对象(D)安全性
32、在以下选项中,与(k=n++)等价的表达式是___C_____
(A)(n=n+1,k=n)(B)(k=++n)
(C)(k=n,n=n+1,k)(D)(k+=n+1)
33、if(!
k)等价于___A_____
(A)if(k==0)(B)if(k!
=1)
(C)if(k!
=0)(D)if(-k)
34、if(k)等价于___C_____
(A)if(k<0)(B)if(k>0)
(C)if(k!
=0)(D)if(k==0)
35、若字符数组s1和s2中各存有一个字符串,则判断字符串s1是否大于字符串s2的正确方法是___B_____
(A)if(s1>s2)(B)if(strcmp(s1,s2)>0)
(C)if(s1 36、若字符数组s1和s2中各存有一个字符串,则判断字符串s1是否小于字符串s2的正确方法是____D____ (A)if(s1>s2)(B)if(strcmp(s1,s2)>0) (C)if(s1 37、若字符数组s1和s2中各存有一个字符串,则判断字符串s1是否等于字符串s2的正确方法是___D_____ (A)if(s1==s2)(B)if(strcmp(s1,s2)<0) (C)if(s1! =s2)(D)if(strcmp(s1,s2)==0) 38、若字符数组s1和s2中各存有一个字符串,则判断字符串s1是否不等于字符串s2的正确方法是__B______ (A)if(s1==s2)(B)if(strcmp(s1,s2)) (C)if(s1! =s2)(D)if(strcmp(s1,s2)==0) 39、若执行以下程序段: inta=1,b=2,n=3,k=4; (n=b>a)||++k; 则k的值是___B_____ (A)5(B)4(C)0(D)1 40、若执行以下程序段: inta=1,b=2,n=3,k=4; (k=a>b)&&++n; 则n的值是__C______ (A)1(B)0(C)3(D)4 41、若执行以下程序段: inta=3,b=4,x=5,y=6; b>a||(y=x+2); 则y的值是__B______ (A)7(B)6(C)1(D)0 42、若执行以下程序段: inta=2,b=4,x=6,y=8; a>b&&(y=x-2); 则y的值是___D_____ (A)0(B)1(C)4(D)8 43、若x=3,y=z=4,则表达式(z>=y&&y>=x)的值为B。 (A)0(B)1(C)3(D)4 44、设有数组定义: chararray[]="A\tB\\C"; 则数组array所占的内存空间的字节数是__B______ (A)5(B)6(C)7(D)8 45、在各循环语句中,当循环条件为___A_____时结束循环。 (A)0(B)FALSE(C)TRUE(D)非0 46、设有数组定义: chararray[]="China"; 则数组array所占的内存空间的字节数是___C_____ (A)8(B)7(C)6(D)5 47、以下if语句书写正确的是B (A)if(x=0;)cout< elsecout<<-x; (B)if(x>0){x=x+1;cout< elsecout<<-x; (C)if(x>0);{x=x+1;cout< elsecout<<-x; (D)if(x>0){x=x+1;cout< elsecout<<-x; 48、若有以下程序段: intk=0; while(k=2)k++; 则其中的while循环体将执行的次数是___D_____ (A)0次(B)1次(C)2次(D)无限次 49、若有以下程序段: intk=0; while(k=0)k++; 则其中的while循环体将执行的次数是___C_____ (A)1次(B)2次(C)0次(D)无限次 50、对一个可编译的C++源程序,描述正确的是C (A)只能由一个源文件组成(B)只能由一个头文件组成 (C)可由多个源文件组成(D)可由多个头文件组成 51、下列程序经编译、链接后,执行时可见的输出结果是A #include voidmain(){std: : cout< : endl;} (A)6(B)5(C)E(D)G 52、在C++中可以和if配合使用,构成分支选择结构的关键字是__D_____ (A)break(B)continue(C)goto(D)else 53、C++中用于结构化程序设计的3种基本结构是___A_____ (A)顺序结构、分支结构、循环结构(B)if、switch、break (C)for、while、do-while(D)if、for、continue 54、在C++中只能与循环语句配合使用,限于循环体中的语句是__B_____ (A)break;(B)continue;(C)goto语句(D)return; 55、在C++中只能与循环语句或switch语句配合使用的语句是___A____ (A)break;(B)continue;(C)goto语句(D)return; 56、在32位的系统中,任何类型的指针变量所占内存的字节数是____B____ (A)2(B)4(C)8(D)16 57、带默认值的函数参数在函数原型的说明中必须放在参数序列的B (A)前部(B)后部(C)中部(D)两端 58、假设某结构体及其有关变量的定义和取值如下: structabc{ints;charch;}d,*p; p=&d; 则能正确引用该结构体变量中的成员的形式是__B______ (A)d->ch(B)p->s(C)p.ch(D)*p.s 59、假设某结构体及其有关变量的定义和取值如下: structabc{ints;charch;}d,*p; p=&d; 则能正确引用该结构体变量中的成员的形式是___D_____ (A)d->ch(B)(*p)->s(C)p.ch(D)(*p).s 60、两个指向相同类型变量的指针变量间非法的运算符是D。 (A)=(B)-(C)==(D)+ 61、以下叙述中错误的是____D____ (A) 在函数中,可通过return语句传回函数值。 (B) 在函数中,可以有多个return语句。 (C) 在C++程序的main后的一对圆括号中也可以带有形参。 (D) 在C++程序中,函数的调用必须在一条独立的语句中完成。 62、对C++语言和C语言的兼容性,描述正确的是B? (A)C++兼容C(B)C++部分兼容C (C)C++不兼容C(D)C兼容C++ 63、若已有以下定义和语句: #include voidmain() { inta=4,b=3,*p,*q,*w; p=&a;q=&b;w=q;q=NULL; /*在此增加语句*/ } 则在注释行下面增加以下哪条赋值语句,程序执行时将会出错? A。 (A)*q=0;(B)w=p;(C)*p=b;(D)*p=*w; 64、当调用函数时,假设实参与形参的类型是匹配的,若实参是一个数组名,则向函数传递的是___D_____。 (A)数组的长度(B)数组每个元素中的值 (C)数组每一个元素的地址(D)数组第一个元素的地址 65、根据如下正确的函数调用语句: func(rec1,rec2+rec3,(rec4,rec5)); 判断该函数的形参个数是A。 (A)3(B)4 (C)5(D)函数调用语句本身有语法错误 66、若有定义inta=19,b=7,c;则执行语句 c=a/b+0.4; 后,c的值为D。 (A)2.4(B)3(C)2.0(D)2 67、C++中while和do-while循环的主要区别是A (A)do-while的循环体至少无条件执行一次。 (B)do-while允许从外部转到循环体内。 (C)while的循环控制条件比do-while的循环控制条件严格。 (D)do-while的循环体至少不能是复合语句。 68、有以下定义语句doublea,b;intw;longc; 若各变量已正确赋值,则下列选项中正确的表达式是B。 (A)a=a-b=b++(B) (c+w)%(int)a (C)w%(int)a*b)(D) w=a==b; 69、以下语句中肯定有语法错误的是B。 (A)n=(i2,++i);(B)(i+1)++; (C)x=++j>0;(D)j++; 70、执行下面的输入语句 cin>>x>>y>>w; 后,若要求x、y、v的值分别为1、2、3,则正确的输入是A (其中 (A)123 (C)x=1y=3v=2 71、下面四个选项中,C++的合法关键字是___D_____ (A)structure(B)print(C)function(D)class 72、假定MyClass为一个类,则该类的拷贝构造函数的声明语句应是_C___ (A)MyClass(MyClass);(B)MyClass(MyClass*); (C)MyClass(constMyClass&);(D)MyClass(MyClass&); 73、若有BOX类的对象s1,则把s1复制成另一个对象s2,正确的是_D___ (A)s2=s1;(B)BOXs1(s2); (C)s2=new(s1);(D)BOXs2(s1); 74、下列关于类和对象的叙述中,错误的是__A__ (A)一个类只能有一个对象。 (B)类是对某一类对象的抽象。 (C)对象是类的具体实例。 (D)类与对象的关系就如基本数据类型与变量的关系。 75、在C++中使用流进行输入输出,其中用于屏幕输出的对象是_D___ (A)screen(B)cin(C)ostream(D)cout 76、对使用运算符new所获得的动态存储空间,释放时必须使用_C___ (A)free(B)release(C)delete(D)destroy 77、用class关键字定义一个类时,其成员的默认访问权限是_D___ (A)friend(B)public(C)protected(D)private 78、从本质上看,引用是被引用变量(或对象)的_A___ (A)别名(B)拷贝(C)复制(D)克隆 79、类Y的对象是类X的成员,在构建X类对象时下列描述正确的是_A___ (A)Y类的构造函数先执行(B)X和Y类的构造函数同时执行 (C)X类的构造函数先执行(D)X和Y类的构造函数都不执行 80、类Y的对象是类X的成员,在构建X类指针时下列描述正确的是_D___ (A)Y类的构造函数先执行(B)X和Y类的构造函数同时执行 (C)X类的构造函数先执行(D)X和Y类的构造函数都不执行 81、类的构造函数在以下什么情况下会被自动调用? _B___ (A)定义成员函数时(B)定义对象时 (C)定义数据成员时(D)定义友元函数时 82、在定义类的成员时,为产生封装性,需使用的关键字是_B___ (A)friend(B)private(C)publish(D)public 83、在下列关于构造函数的说法中,不正确的是_C___ (A)构造函数必须与类同名(B)构造函数有时可省略不写 (C)构造函数必须有返回值(D)构造函数初始化数据成员 84、类的非静态成员函数都会有一个隐含指针,它是__A__ (A)this指针(B)self指针(C)空指针(D)函数指针 85、一个类若拥有多个构造函数,则这些构造函数间的关系是__B__ (A)重复(B)重载(C)拷贝(D)覆盖 86、用struct关键字定义一个类时,其成员的默认访问权限是_B___ (A)friend(B)public(C)protected(D)private 87、若定义一个对象数组,则下列描述正确的是__A____ (A)对每个元素均调用一次构造函数(B)部分元素调用构造函数 (C)只是首元素调用构造函数(D)均不需要调用构造函数 88、C++中由“/*”开始的注释的有效范围是__B____ (A)从“/*”开始到行尾(B)从“/*”开始到“*/”为止 (C)从“/*”开始到文件尾(D)从“/*”开始到“//”为止 89、C++中由“//”开始的注释的有效范围是___A___ (A)从“//”开始到行尾(B)从“//”开始到“*/”为止 (C)从“//”开始到文件尾(D)从“//”开始到“//”为止 90、一个类可以获得另一个类的特性的机制称为___C___ (A)抽象(B)封装(C)继承(D)多态 91、C++允许在结构体中定义函数,这些函数称为___D_____ (A)静态函数(B)构造函数(C)析构函数(D)成员函数 92、使用delete[]删除对象数组时,描述正确的是___A_____ (A)数组中各元素都调用析构函数 (B)数组中各元素都调用构造函数 (C)不调用析构函数 (D)只有首元素调用析构函数 93、如果类A被声明成类B的友元,则___C_____ (A)类A的成员即类B的成员(B)类B的成员即类A的成员 (C)类B不一定是类A的友元(D)类B也一定是类A的友元 94、下列关于析构函数的描述中,正确的是___A_____ (A)不能指定返回值类型(B)函数体中必须有delete语句 (C)可以重载(D)返回值类型必须是void类型 95、类的私有数据成员可以被____C____访问。 (A)程序中的任何函数(B)其他类中的成员函数 (C)本类中的成员函数(D)派生类中的成员函数 96、关键字___C_____说明对象或变量初始化后不会被修改。 (A)static(B)public(C)const(D)private 97、在下列有关构造函数的说法中,不正确的是___D_____ (A)构造函数无任何函数值类型(B)构造函数名与类名相同 (C)构造函数在建立对象时自动执行(D)构造函数有且只有一个 98、在下列对类的构造函数和析构函数的描述中,正确的是___A_____ (A)构造函数可以重载,析构函数不能重载。 (B)构造函数不能重载,析构函数可以重载。 (C)构造函数可以重载,析构函数也可以重载。 (D)构造函数不能重载,析构函数也不能重载。 99、下列对于友元的描述中,正确的是___B_____ (A)友元是本类的成员函数(B)友元不是本类的成员函数 (C)友元一定是函数(D)友元不能访问本类私有成员
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 选择题 复习
![提示](https://static.bingdoc.com/images/bang_tan.gif)