C++复习题库+C++试题库_精品文档.doc
- 文档编号:208399
- 上传时间:2022-10-06
- 格式:DOC
- 页数:69
- 大小:223KB
C++复习题库+C++试题库_精品文档.doc
《C++复习题库+C++试题库_精品文档.doc》由会员分享,可在线阅读,更多相关《C++复习题库+C++试题库_精品文档.doc(69页珍藏版)》请在冰豆网上搜索。
C++习题
1.下列字符列中,可作为C++语言程序自定义标识符是()。
A.switchB.fileC.breakD.do
2.运算符+、<=、=、%中,优先级最低的运算符是()。
A.+B.<=C.=D.%
3.设变量m,n,a,b,c,d均为0,执行(m=a==b)||(n=c==d)后,m,n的值是短路
()。
A.0,0B.0,1C.1,0D.1,1
4.字符串”vm\x43\\\np\102qu”的长度是()。
A.8B.9C.16D.17
5.设有代码“inta=6;”,则执行了语句“a+=a-=a*a;”后,变量a的值是
()。
A.0B.-24C.-40D.–60
6.voidmain()
{intx=-1;
do
{x=x*x;}
while(!
x);}
下列说法正确的是()。
A.是死循环B.循环执行两次
C.循环执行一次D.有语法错误
7.下面有关for循环的正确描述是()。
A.for循环只能用于循环次数已经确定的情况
B.for循环是先执行循环体语句,后判断表达式
C.在for循环中,不能用break语句跳出循环体
D.for循环的循环体语句中,可以包含多条语句,但必须用大括号括起来
8.下面程序段(从右到左x<=2为真1时
)。
x=3;
do
{y=x--;
if(!
y){cout<<”x”;continue;}
cout<<”#”;}
while(1<=x<=2);(1<=x)=1,0bool型
A.将输出##B.将输出##*
C.是死循环D.含有不合法的控制表达式
9.以下正确的说法是()。
A.用户若需要调用标准函数,调用前必须重新定义
B.用户可以直接调用所有标准库函数
C.用户可以定义和标准库函数重名的函数,但是在使用时调用的是系统库函数
D.用户可以通过文件包含命令将系统库函数包含到用户源文件中,然后调用系统库函数
10.在参数传递过程中,对形参和实参的要求是
()。
A.函数定义时,形参一直占用存储空间
B.实参可以是常量、变量或表达式
C.形参可以是常量、变量或表达式
D.形参和实参类型和个数都可以不同
11.对数组名作函数的参数,下面描述正确的是
()。
A.数组名作函数的参数,调用时将实参数组复制给形参数组
B.数组名作函数的参数,主调函数和被调函数共用一段存储单元
C.数组名作参数时,形参定义的数组长度不能省略
D.数组名作参数,不能改变主调函数中的数据
12.若有语句inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则()不是对a数组元素的正确引用(其中0≤i<10)。
A.p[i] B.*(*(a+i)) C.a[p-a] D.*(&a[i])
13.以下程序的输出结果是()。
#include
voidmain()
{ chars[]="12134211",*p;
intv1=0,v2=0,v3=0,v4=0;v1v2v3v4
for(p=s;*p;p++)2434
switch(*p)
{
case'1':
v1++;
case'3':
v3++;
case'2':
v2++;
default:
v4++;
}
cout< } A.4,2,1,1 B.4,7,5,8C.7,3,2,1 D.8,8,8,8 14.下列声明结构体变量错误的是()。 A.structstudentB.structstudent { intno;{intno; charname[16];charname[16]; }st1,st2;}; structstudentst1,st2; C.structstudentD.structstudent {intno;{intno; charname[16];charname[16]; };}; structst1,st2;studentst1,st2; 15.对类的构造函数和析构函数描述正确的是()。 A.构造函数可以重载,析构函数不能重载 B.构造函数不能重载,析构函数可以重载 C.构造函数可以重载,析构函数也可以重载 D.构造函数不能重载,析构函数也不能重载 16.下面对于友元函数描述正确的是()。 A.友元函数的实现必须在类的内部定义B.友元函数是类的成员 C.友元函数破坏了类的封装性和隐藏性D.友元函数不能访问类的私有成员 17.派生类的对象对它的基类成员中()是可以访问的。 A.公有继承的公有成员B.公有继承的私有成员 C.公有继承的保护成员D.私有继承的公有成员 18.C++类体系中,不能被派生类继承的有()。 A.构造函数B.虚函数C.静态成员函数D.赋值操作函数 19.以下()成员函数表示虚函数。 A.virtualintvf(int);B.voidvf(int)=0; C.纯虚函数,不用定义 virtualvoidvf()=0;D.virtualvoidvf(int){}; 20.下面对静态数据成员的描述中,正确的是()。 A.静态数据成员可以在类体内进行初始化 B.静态数据成员不可以在类体内进行初始化 C.静态数据成员不能受private控制符的作用 D.静态数据成员可以直接用类名调用? ? 21.继承具有(),即当基类本身也是某一个类派生类时,底层的派生类也会自动继承间接基类的成员。 A.规律性B.传递性C.重复性D.多样性 22.若有以下定义,则释放指针所指内存空间的操作是()。 floatr=newsfloat[10]; A.deleter;B.delete*r; C.delete[]r;D.deleter[]; 23.若有以下定义,则对字符串的操作错误的是(strcat(s1,s2): adds2tos1’stail. )。 chars[10]=”Program”,t[]=”test”; A.strcpy(s,t);Copyttos B.cout< C.strcat(“this”,t);D.cin>>t; 24.在if语句中的表达式是()。 A.只能是表达式B.只能是关系表达式和逻辑表达式 C.只能是逻辑表达式D.可以是任意表达式 25.在用关键字class定义的类中,以下叙述正确的是()。 A. 在类中,不作特别说明的数据成员均为私有类型 B. 在类中,不作特别说明的数据成员均为公有类型 C. 类成员的定义必须是成员变量定义在前,成员函数定义在后 D. 类的成员定义必须放在类定义体内部 参考答案: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 B C C B D C D C D B B B B C A 16 17 18 19 20 21 22 23 24 25 C A A D B B C C D A 公共基础知识 一、选择题 (1)下列关于栈的叙述正确的是 A)栈是非线性结构 B)栈是一种树状结构 C)栈具有先进先出的特征 D)栈具有后进先出的特征 (2)结构化程序设计所规定的三种基本控制结构是 A)输入、处理、输出 B)树形、网形、环形 C)顺序、选择、循环 D)主程序、子程序、函数 (3)结构化程序设计的一种基本方法是 A)筛选法 B)递归法 C)归纳法 D)逐步求精法 (4)如果对一个关系实施了一种关系运算后得到了一个新的关系,而且新的关系中属性个数少于原来关系中属性个数,这说明所实施的运算关系是: A)选择 B)投影 C)连接 D)并 一: 选择题: (1)D (2)C (3)D (4)B C++语言程序设计 一、选择题 (1)C++语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是() A)面向过程 B)面向对象 C)安全性 D)复用性 (2)C++语言的跳转语句中,对于break和continue说法正确的是() A)break语句只应用与循环体中 B)continue语句只应用与循环体中 C)break是无条件跳转语句,continue不是 D)break和continue的跳转范围不够明确,容易产生问题 (3)for(intx=0,y=o;! x&&y<=5;y++)语句执行循环的次数是() A)0 B)5 C)6 D)无次数 (4)考虑函数原型voidtest(inta,intb=7,char="*")默认参数格式 下面的函数调用中,属于不合法调用的是() A)test(5);B)test(5,8);C)test(6,"#")D)test(0,0."*"); (5)下面有关重载函数的说法中正确的是() A)重载函数必须具有不同的返回值类型; B)重载函数形参个数必须不同; C)重载函数必须有不同的形参列表 D)重载函数名可以不同; (6)下列关于构造函数的描述中,错误的是() A)构造函数可以设置默认参数; B)构造函数在定义类对象时自动执行 C)构造函数可以是内联函数; D)构造函数不可以重载 (
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 复习 题库 试题库 精品 文档