一、 填空题(15分,每空1分)
1、c++ 语言中规定的返回值的类型是由所决定的。在定义该函数时所指定的函数类型。
2、在类的定义体外定义成员函数时,需要在函数名前加上 ,而在域外使用成员函数时,需要在成员名外加上的名字。
3、在c++中,可以把具有相同内部存储结构和相同操作的对象看成属于同一类。在指定一个类后,往往把属于这个类的对象称为类的 。从语言角度来说,类是一种数据类型,而是具有这种类型的变量。
4、要在类的对象上使用运算符,除了运算符___和___以外,其他的运算符都必须被重载。
5、有如下定义语句:myclassp[10];则系统自动调用该类构造函数___次。当类对象数组p离开它的作用域时,系统自动调用该类析构函数___次。
6、对类中的成员函数和属性的访问是通过和___这3个关键字来控制的。
7、__运算符对指定类型对象动态分配内存并返回该类型的指针。
8、使用传址调用方式时,调用函数的实参使用地址值,被调用函数的形参使用 。
9、利用继承能够实现这种实现缩短了程序的开发时间,促使开发人员复用已经测试和调试好的高质量软件。
二、 选择题(20分,每题2分)
1、 下面语句彼此等价的是。
a)!(a<10)&&a>0)__a<10)&&a>0))
b)!(a==b)__a>b)&&ac)!(a>b)__ad)!(a>10)||a<0))_a<=10)&&a>=0)
2指针运算的描述错误的是。
a)在一定条件下,两个指针可以相加。
b)在一定条件下,两个指针可以进行逻辑判断。
c)在一定条件下,指针可以为空值。
d)在一定条件下,两个指针可以相互赋值。
3、一个函数带有参数说明时,则参数的默认值应该在___中给出。
a) 函数定义 b)函数声明 c)函数定义或声明 d)函数调用
4、关于类的说法错误的是。
a) 对象是类的一个实例。
b) 类是一种用户自定义的数据类型。
c) 在类中,如果不作特别说明,所有的成员函数均为公有类型。
d) 在类中,如果不作特别说明,所有的数据均为私有类型
5、两个变量定义不能同名,是因为。
a)这两个变量定义在同一文件中 b)这两个变量定义在同一作用域中。
c)一个定义在main函数中,一个定义在子函数中 d)以上说法均不正确
6、在c++语言中函数返回值的类型是由___决定的。
a) 定义该函数时所指定的函数类型 b)return语句中的表达式类型。
c) 调用该函数时系统临时 d)调用该函数时的主调函数类型
7、下面是类myclass的定义,对定义中语句描述正确的是。
classmyclass
public:
voidmyclass(inta)__
intf(inta,intb
x=a;y=b;
intf(inta,intb,intc=o)__
x=a;y=b;z=c;
staticvoidg()_
private:
intx,y,z;
a)语句①是类myclass的构造函数定义 b)语句②和语句③实现类成员函数的重载。
c)语句④实现对类成员变量x的更新操作 d)语句①、②和④都不正确
8、有关构造函数的说法不正确的是 。
a)构造函数的函数名与类名相同
b)构造函数在说明类变量时自动执行。
c)构造函数无任何函数类型
d)构造函数有且只有一个
9、在多继承的构造函数定义中,几个基类的构造函数之间用分隔。
a) .b) .c) .d
10、下列关于条件语句的描述中,__是错误的。
a)if语句中只有一个else子句 b) if语句中可以有多个else if子句
c) )if语句中if体内不能是switch语句 d)if语句中if体内可以是循环语句
三、 阅读程序填空(15分,第2小题最后一空1分,其它空2分)
1、 下列程序通过把类distance定义为类point的友元类来实现计算两点之间距离的功能。请完成该程序。
##include<>
classpoint
public:
pointvoidprint()
cout<<"x=" private: floatx,y; classdistance public: floatdis(point&p,point&q); f1oatdistance::dis(point&p,point&q) voidmain() pointp(10,10),q(20,20); distanced; 2、下面的程序实现从键盘输入一个偶数,输出该偶数写成的两个素数之和。 #include <> #include <> void main () int a,b,c,d; cout <>a; if (a<=0 ||a%2!=0) cout <<输入一个正偶数!” elsefor for (c=2;c<=sqrt(b);c++) if (b%c==0) break; if (c>sqrt (b)) d=a-b; else break; forif ( d%c==0)) break; if (c>sqrt (d)) cout <
3、下面程序的执行结果是: #include <> #include <> void print (int n) if (n!=0) for (int i=1;i<=n;i++) cout < void main () int n=4; 四、 阅读程序,并写出结果(20分) #include<> #include<> void main () sample(int a,int b) ~sample() if(x==y) cout<<"x=y" cout<<"x!=y"<} void disp() cout<<"x="< void main() sample s1(2,3); s1.~sample(); #include<> class sample int x; public: sample(){ sample(int a) sample(sample &a); void main() sample s1(2),s2(s1); 五、 编程题(30分,每题10分) 1、 写“三色冰激淋”程序,这是一个由冰激淋商提出来的问题,有28种颜色的原料,可以组合成多少种三色冰激淋。 2、编写程序求出所有满足下列条件的三位数:其各位数字的立方和恰好等于该数本身。例如 153=1*1*1+5*5*5+3*3*3。 3、以面向对象的概念设计一个类,此类包含3个私有数据:unlead、lead(无铅汽油和有铅汽油)以及total(当天总收入。无铅汽油的**是17元/公升,有铅汽油的**是16元/公升),请以构造函数方式建立此值。 试输入某天所加的汽油量,本程序列出加油站当天的总收入。 c 程序设计试卷。一 选择题。每小题3分,共15分 1 派生类能够直接访问的基类的成员是 a 公有成员 b 保护成员 c 私有成员 d 静态。2 下面是几条定义类的语句,不能被继承的类是 a abstract class figure b class figure c public class fi... 面向对象的程序设计c 试卷c 一 填空 每空2分,共20分 1 定义于函数外的变量称为。2 假定class1为一个类,则执行 class1 a 5 b 2 p 3 语句时,自动调用该类构造函数的次数为。3 利用操作符 语句序列p p 1 f p 5 的功能可以由一个语句完成。4 不借助于其他变量交换... c 程序设计课程期末考试试题 a卷 一判断题 正确打 a 错误打 b 每小题1分,共计20分 1在面向对象的编程中,和数据合并为一个不可分割的对象。2对象是有确定简介且与要处理的问题相关的概念或事物。3每个对象都称为它的类的一个示例。类中的对象具有相同的属性和共同的行为。4多态性是指相同的函数可以在...C程序设计试卷1C程序设计
C 程序设计试卷C
C 程序设计试卷 A