一、 填空题(15分,每空1分)
1、 在c++程序中,一个数组的名字实际上是指向该数组___元素的指针,并且在任何时候都不允许 。
2、 运算符和sizeof,按优先级由高至低的排列次序为。
3、 在进行函数调用时,将把参数的___传递给值参数,把参数的___传递给引用参数。
4、 非成员函数应声明为类的___才能访问这个类的private成员。
5、 在调用f1( )函数的过程中,又调用了f2( )函数,这种调用称为___调用:而在调用f1( )函数的过程中,调用于了f2( )函数,又在调用f2()函数的过程中调用了f1( )函数,这种调用称为___调用。
6、 重载的运算符仍然保持其原来的优先级、__和___
7、 利用继承能够实现这种实现缩短了程序的开发时间,促使开发人员复用已经测试和调试好的高质量软件。
8、 定义一个函数时,若只允许函数体访问形参的值而不允许修改它的值,则应把该形参声明为___即在该形参声明的前面加上___关键字进行修饰。
9、类是对具有共同属性和行为的一类事物的抽象描述,共同属性被描述为类中的___共同行为被描述为类中的 。
二、 选择题(20分,每题1分)
1、下列说明中:const char*ptr ,ptr应该是___
a) 指向字符常量的指针 b)指向字符的常量指针
c) 指向字符串常量的指针 d)指向字符串的常量指针。
2、 对变量的引用中错误的是___
a)inta;int&p=a;
b)chara;char&p=a;
c)inta;int&p;p=a;
d)floata;float&p=a;
3、关于函数返回值类型和返回值表达式的类型的描述中,错误的是___
a)函数返回值类型决定了返回值表达式的类型
b)函数返回值的类型是在定义函数时确定的,在函数调用时不能改变。
c)函数返回值的类型就是返回值表达式的类型
d)函数返回值表达式类型与返回值类型不同时,函数表达式类型应转换成函数返回值类型
4、下列叙述中错误的是。
a) 一个函数中可以有多条return语句
b)调用函数必须在一条独立的语句中完成。
c)函数中通过return语句传递函数值
d)主函数名main也可以带有形参
5、运算符->*的功能是 。
a) 用来表示指向对象指针对指向类成员指针的操作。
b) 用来表示对象对指向类成员指针的操作。
c) 用来表示指向对象指针对类成员的操作。
d) 用来表示对象类成员的操作
6、若有以下函数调用语句:f(m+n,x+y,f(m+n,z(x,y)))在此函数调用语句中实参的个数是。
a)3 b) 4 c)5 d)6
7、为了使类中的某个成员不能被类的对象通过成员操作符访问,则不能把该成员的访问权限定义为。
a)public b)protected c)private d)static
8、在c++中,数据封装要解决的问题是。
a) 数据的规范化 b)便于数据转换 c)避免数据丢失 d)防止不同模块之间数据的非法访问
9、有如下定义语句:inta=则对语句int*p=a;正确的描述是。
a)语句int*p=a;定义不正确
b)语句int*p=a;初始化变量p,使其指向数组对象a的第一个元素。
c)语句int*p=a;是把a[0]的值赋给变量p
d)语句int*p=a;是把a[1]的值赋给变量p
10、下列程序段中有错的是。
a)template b)type c)func(typea,b) d)
三、 程序填空题(15分,第2题第一空1分,其它空2分)
1、以下程序输出1—100之间各位数的乘积大于各位数之和的数,例如对于数字12,有1*2<1+2,故不输出该数,对于27,有2*7>2+7,故输出该数,请填空:
#include <>
void main (
int n, k=1 ,s=0 ,m;
for (n=1;n<=100;n++)
2、下面的程序用来判断某年是否为闰年(即年号能被400整除)
#include<>
voidmain()
int year ,leap;
cout<<"输入年号:";
cin >>year;
if (year%400==0)
else if
leap=1;
else leap=0;
if (leap
else cout<< year <<不是闰年";
3、用递归函数将所输入的5个字符按反序排列出来。
#include<>
void iochar(int);
void main (
else cin>>c;
cout<}
四、阅读程序,并写出结果(20分,每题4分)
#include<>
#include<>
void main ()
#include<>
class sample
int x,y;
public:
sample()
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); #include<> void main() int a; int &b=a; b=10; cout<<"a="< 五、编程题(30分,每题10分) 1、编写一个程序,从键盘出入一个偶数,输出该偶数写成的两个素数之和。 2、若用0到9之间不同的三个数构成一个三位数,编程序统计出共有多少种方法。 3、一个程序计算两个给定长方形的面积,其中在设计类成员函数addarea() 用于计算两个长方形的总面积)时使用对象作为参数。 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