中央广播电视大学2007--200日学年度第一学期"开放专科"期末考试
计算(控)等专业 C++语言程序设计 试题
2008年1月
一、单选题(每小题2分,共20分)
1.由C++源程序文件编译而成的目标文件的缺省扩展名为( )。
A.obj B.lik
C.exe D.cpp
2.程序运行中需要从键盘上输人多于一个数据时,各数据之间应使用( )符号作为分隔符。
A. 空格或逗弓 B.逗号或回车
C. 逗号或分号 D. 空格或回车
3.设x是一个bool型的逻辑量,y的值为10,则表达式x && y的值为( )。
A. 1 B. O
C. 与x值相同 D.与x值相反
4.for语句能够被改写为( )语句。
A.复合 B.if
C.switch D.while
5.在下面的do循环语句中,其循环体被执行的次数为( )。
int i=O;do i++;while(i*i<10):
A. 4 B. 3
6.在下面的一维数组定义中,( )浯句有语法错误。
A.int a[]={l,2,3}; B.int a[10]={0};
C.int a[]; D.int a[5];
7.下面的( )保留字不能作为函数的返回类型。
A.void B. int
C. new D.long
8.下面的函数声明中,( )是"void BC(int a,int b);"的重载函数。
A.int BC(int x,int y); B.void BC(int a,char b);
C float BC(int a,int b,int c=0); D,int BC(int a,int b=0);
9.当类中一个字符指针成员指向具有n个字节的存储空间时,它所能存储字符串的最大长度为( )。
A.n B. n+l
C. n-l D. n-2
lo.假定AB为-个类,则该类的拷贝构造函数的声明语句为( )。
A. AB&(AB x); B. AB(AB x);
C AB(AB* x); D.AB(AB&);
二、填空题(每小题2分,共2Q分)
1.执行"cout<
3.表达式float(25)/4的值为 -- 。
4.关系表达式x+y>5的相反表达式为--。
5.假定一个二维数组的定义为"int a[3][6];",则该数组含有----个元素。
6.执行"typedcf int ABC[20];"语句把ABC定义为具有20个整型元素的
--。
7.假定p所指刘象的值为36,p+l所指对象的值为49,则*++p的值为----。
8.假定a是-个-维数组,则a[i]的指针访问方式为--一一--·
9.对一个类中的数据成员的初始化叫以通过构造函数中的初始化表实现,也可以通过构造函数中的----实现。
lo.当-个类对象离开它的作用域时,系统将自动调用该类的---一----一-----一-。
三、写出下列每个程序运行后的输出结果(每小题6分,共30分)
1. #include
#include
int SD(int a, int b, char op){
switch(op) {
case'+': return a+b;
case '-' : return a-b;
default: { cout<<"操作符op出错,退出运行!";exit( 1 ) ;}
}
void main() {
int x=20, y=6;
cout<
运行结果:
2. #include
#include
void main() {
char * a[5] = {"student","worker","cadre","soldier","apen"}
char * pl
pi=a[O];
for(int i=1;i<5;i++) {
if(strcmp(a[i],pl)>0) pl=a[i];
}
cout<
运行结果:
3. #include
int WF(int x, int y) {
x=x+y;
y=x+y;
return x+y;
}
void main() {
cout<
运行结果:
4. # include
const int n=9;
void main() {
int a[n]={2,4,6,8,iO,12,14,16,18};
int s=O;
for(int i=O; i
}
cout<<"s ="<
5. #include
void main() {
int *d=new int[5];
int i;
for(i=O;i<5;i++ ) {
d[i] = 2 * i+l;
cout<
}
运行结果:
四、写出下列每个函数的功能(每小题8分,共24分)
1. float Fl(int n) { //n 为大于等于1的整数
float x,y=O;
do {
cin>>x;
y+=x * x;
} while( --n>0);
return y;
}
函数功能:
2. bool WE(int a[], int b[], int n) {
for(int i=O;i
if(i==n) return true; return false;
)
函数功能:
3. void LK(int a[], int n, int&m) {
float s=0;
int i;
for(i=0 ;i
m=0;
for(i=O;i
}
函数功能:
五、按题目要求编写函数(6分)
假定一个函数声明为"void AD(int a[],int n);",要求把数组a中的n个元素值按相反的次序仍保存在数组a中。
试卷代号:2058
中央广播电视大学2007-2008学年度第一学期"开放专科"期末考试
计算(控)等专业 C++语言程序设计 试题答案及评分标准
(供参考)
2008年1月
一、单选题(每小题2分,共20分)
1.A 2.D 3,C 4.D 5.A
C.C 7.C 8.B 9.C 10.D
二、填空题(每小题2分,共20分)
评分标准:每题与参考答案相同者得2分,否则不得分。
1.D
2.//
3.6.25
4.x+y<=5
5. 18
6.数组类型
7.49
8.*(a+i)
9.函数体(或定义体)
10.析构函数
三、写出下列每个程序运行后的输出结果(每小题6分,共30分)
1.26 14 //每个数据3分
2.worker
3. 3l
4. 24
5.1 3 5 7 9 //每个数据1分,全对给6分
四、写出下列每个函数的功能(每小题8分,共24分)
评分标准:每题与参考答案的叙述含义相同者得8分,否则酌情给分。
1.求出从键盘1:输入的n个整数的平方和并返回。
2.判断具有n个元素的两个数组n和b中对应元素值是否全部相等,若是则返回真,否则返回假。
3. 统计出数组a的前n个元素中大于等于其平均值的元素个数并由引用参数m带回。
五、按题目要求编写函数(6分)
评分标准:按照编程的完整程度酌情给分。
void AD(int a[],int n)
for(i=O;i
}}
来源:网络整理 免责声明:本文仅限学习分享,如产生版权问题,请联系我们及时删除。
相关文章:
2042电大《教育法制基础》试题和答案20070104-27
2033电大《高等数学(B)(1)》试题和答案20040704-27
2042电大《教育法制基础》试题和答案20060104-27
2042电大《教育法制基础》试题和答案20060704-27
2042电大《教育法制基础》试题和答案20040104-27
2041电大《计算机在金融业中的应用》试题和答案20060704-27
2041电大《计算机在金融业中的应用》试题和答案20070104-27
2041电大《计算机在金融业中的应用》试题和答案20040104-27