1、C++程序设计试卷 一、 填空题(每空1分,共15分) 1. C语言的基本数据类型有四种,用类型说明表示为: 、 、 、 。 2. if语句的三种形式是: ; ; 。 3. C语言是一种函数式,C程序中至少要有一个 函数。 4. 已知j=2,则j>3的值为: 。 5. C语言的一个语句必须以符号 结束。
2、 6. 派生类的3种继承方式分别是___________、_______和_______。 7. 绑定是指一个计算机程序自身彼此关联的过程。按照绑定所进行的阶段不同,可分为_____________和__________。 二、 单项选择题(每题2分,共20分) 1.由C++源程序文件编译而成的目标代码文件的缺省扩展名为【 】。 A.cpp B.exe C.obj D.lik 2.设x和y均为bool类型,则x&&y为真的条件是【 】。 A.它们均为真 B.其中一个为真 C.它们均为假
3、D.其中一个为假 3 .设有int a[ ]={10,11,12},*p=&a[0];则执行完*p++;*p+=1;后a[0],a[1],a[2]的值依次是【 】。 A.10,11,12 B.11,12,12 C.10,12,12 D.11,11,12 4.设有说明int s[2]={0,1},*p=s; 则下列错误的C++语句是【 】。 A.s+=1; B.p+=1; C.*p++; D. (*P)++; 5.若有char a[3]= {‘A’,’\0’,’D’},*P=a,i=2,j=4;则下列表达式
4、值不是1的有【 】。 A.strlen (a); B.j‖j; C.* (P+1); D.- -ⅰ; 7.函数重载的根据是【 】。 A. 函数的返回值 B. 函数名 C. 函数参数的个数与类型 D. 函数体的功能相似 8.下面描述中,【 】描述了抽象类的特性 A. 可以声明虚函数 B. 可以进行构造函数重载 C. 可以定义友元函数 D. 不能声明抽象类的对象 9.派生类的对象对它的基类成员中【 】是可以访问的 A. 公有继承的公有成员 B. 公有继承的私有成员 C. 保护继承的私有成员 D. 私有继承的保存成员 10.对于
5、派生类的构造函数,在定义对象时构造函数的执行顺序是【 】。
A. 先执行基类的构造函数,再执行派生类本身的构造函数
B. 只执行派生类本身的构造函数
C. 只执行基类的构造函数
D. 先执行派生类本身的构造函数,再执行基类的构造函数
三、 阅读程序填空题(共15分)
1. 以下将输入的两个数a,b按从大到小的顺序输出的程序,
2. 请在______处补充相应的语句,使程序完整。
#include
6、} main() { int a,b; int *pointer_1,*pointer_2; cin>>a>>b; pointer_1=&a; pointer_2=&b; if( ③ ) swap(pointer_1,pointer_2); cout<<*pointer_1<<*pointer_2; } 2.以 下是用二级指针处理字符串,请在______处补充相应的语句,使程序输出的结果为”good bye” 。 #include “iostream.h” #define NULL 0 v
7、oid main()
{
char **p;
char *name[]={"hello","good","world","bye",""};
p=name+1;
;
④ ;
while(**p!=NULL)
cout<< ⑤ <
8、ent(int n, float s):num(n),score(s){} int num; float score; }; int main() { Student stud[5]={Student(101,78.5),Student(102,85.5,Student(103,98.5), Student(104,100.0),Student(105,95.5)}; void max(Student *); Student *p=&stud[0]; max(___⑥_____); return 0; } void max(Student * a
9、rr);
{
float max_score=__⑦___;
_____⑧______;
for(int I=1;I<5;I++)
if(arr[I].score>max_score) {max_score=arr[I].score; k=I;}
cout<
10、m,n; i=8; j=10; m=++i+j++; n=(++i)+(++j)+m; cout< main() { int a[3][4]={{1,2,3,4}, {9,8,7,6}, {-10,10,-5,2}}; int i,j,row=0,colum=0,max; max=a[0][0]; for(i
11、0;i<=2;i++)
for(j=0;j<=3;j++)
if(a[i][j]>max)
{ max=a[i][j];
row=i;
colum=j;
}
cout<<"max=”<
12、
increment();
increment();
increment();
}
void increment(void)
{ int x=0;
x++;
printf(“%d\n”,x);
}
运行时输出为:
4. #include
13、id display(){cout<
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4009-655-100 投诉/维权电话:18658249818