2015《C++面向对象程序设计语言》期末试卷及参考答案.doc
文本预览下载声明
《C++面向对象程序设计语言》
期末试卷及参考答案
一、判断题)
1. 按照标识符的要求,下划线是不能组成正确标识符的。(x )
2. 引用就是某个变量的别名,对引用的操作,实质上就是对被引用的变量的操作。(v )
3. 在不同类型操作数组成的表达式中,其表达式类型一定是最高类型double型。(x )
4. For循环是只有可以确定的循环次数时才可使用,否则不能用for循环。( x)
5. 返回值类型、参数个数和参数类型都相同的函数也可以重载。(x )
6. 重新定义的标识符在定义它的区域内是可见的,而与其同名的原标识符在此区域内是不可见的但是却是存在的。(v )
7. 通常的拷贝初始化函数的参数是某个对象的成员名或对象的引用名。( v)
8. 已知:类A中一个成员函数说明如下:void Set(Aa);其中A a的含意是将a的地址值赋给变量Set。( x)
9. 具有转换函数功能的构造函数,是指只能带有一个或两个参数的构造函数。( x)
二、读程题,写出程序的运行结果。
1、#includeiostream.h
void main()
{
int i(0);
while(++i)
{
if(i= =10) break;
if(i%3!=1) continue;
coutiendl;
}
}
2、#include iostream.h
int a[8]={1,2,3,4,5,6,7};
void fun(int *pa,int n);
void main( )
{ int m=8;
fun(a,m);
couta[7]endl;
}
void fun(int *pa,int n)
{ for (int I=0;In-1;I++)
*(pa+7)+= *(pa+I);
}
3、#includeiostream.h
void ff(int x),ff(double x);
void main()
{ float a(88.18);
ff(a);
char b(a);
ff(b);
}
void ff(int x)
{ coutff(int): xendl; }
void ff(double x)
{ coutff(double): xendl;}
4、#include iostream.h
class AA
{ public:
AA(int i,int j)
{A=i;B=j;coutConstructor\n;}
AA(AA obj)
{A=obj.A+1;B=obj.B+2;coutCopy_Constructor\n;}
~AA()
{coutDestructor\n;}
void print()
{coutA=A,B=Bendl; }
private:
int A,B;
};
void main()
{ AA a1(2,3);
AA a2(a1);
a2.print();
AA *pa=new AA(5,6);
pa-print();
delete pa;
}
三、编程题
1、编写程序求1至100间所有素数之和,其中求素数要求用函数实现;
2、编程打印如下图形:
1
22
333
4444
55555
参考答案
一、判断题
二、读程题,写出程序的运行结果。()
1、1
4
7
2、 28
3、 ff(double):88.18
ff(int):97
4、Constructor
Copy_ Constructor
A=3,B=5
Constructor
A=5,B=6
Destructor
Destructor
Destructor
三、编程题
1、#include iostream.h
int prime(int x);
void main()
{ int sum=0;
for(int i=51;i100;i+=2)
sum+=prime(i);
coutSum=sumendl;
}
int prime(int x)
{
for(int j=2;jx;j++)
if(x%j==0) break;
if(j=x) return x;
else return 0;
}
2、#include iostream.h
void main()
{
for (int i=1;i=5;i++)
{ for (int j=1;j=i;j++)
couti;
cout\n; }
}
四、综合分析应用题
1、(简答)格式:
1)、传值:实参用变量名(或
显示全部