语句将被执行()次。
A.1B.n一1
C.nD.n+1
5.假定a为一个短整型(shortint)数组,则元素aL8]的地址比该数组的首地址大()
个字节。
A.4B.8
C.16D.32
6.求一个字符串长度的标准函数为()。
A.strlen()B.strcap()
C.strcat()D.strcmp()
7.若用数组名作为函数调用的实参,传递给对应形参的是该数组的()。
A.首地址B.第一个元素的值
c.全部元素的值D.所含元素的个数
8.假定a为一个数组名,则下面的()表示式表示有语法错误。
A.a[i]B.*a++
C.*aD.*(a十1)
9.假定AB为一个类,则执行"ABa(4),b[4],*p[5]”语句时,自动调用该类构造函数
的次数为()。
A.4B.5
C.8D.13
10.当需要对标准输入/输出设备进行输入/输出操作时,应在文件开始使用#include预
处理命令,使之包含()头文件。
A.iostream.hB.stdlib.h
C.fstream.hD.strstrea.h
二、填空题(每小题2分,共20分)
1.若需要定义一个标识符常量,而且使C++能够进行类型检查,则应在定义语句的开始
使用保留字。
2.算术表示式2xs对应的C++表示式为,已知pow(a,b)的值为ab。
3.逻辑表示式x>y&SLx!
:
10的相反表示式为。
4.每个字符指针变量占用内存的个字节的存储空间。
5.执行"typedefintDataType;”语句后,在使用int定义整型变量的地方都能够使用标识
符来定义整型变量。
6.对于在所有函数定义之外定义的变量,若没有被初始化则系统隐含对它赋予的初值为
__________.
7.假定p所指对象的值为25,pq-1所指对象的值为46,则执行“*(p十1);”语句后,p所
指对象的值为。
8.假定一个结构类型的定义为"structA{inta;double*b;A*c;};”,则该类型的大小
为——字节。
9.假定一维数组的定义为"inta[8]”,则该数组所含元素的个数为——。
10.若whi1e循环语句的头部为”while(i++<=10)”,若i的初值为o,同时在循环体中
不会修改i的值,则其循环体将被重复执行——次后正常结束。
三、写出下列每个程序运行后的输出结果(每小题6分,共30分)
1.#include
voidmain(){
intS=0;
fOr(inti=1;i<:
8;i=+2)
s+=i*i;
cout<<"s=”<
}
输出结果:
2.#include
voidmain(){
inti=1,s=0;
while(s<15)s+=i++;
cout<
)
输出结果:
3.#include
voidmain(){
inta[8]:
二{36,25,48,14,55,20,47,82};
intc1:
0,c2=0;
fOr(inti=0;i<8;i+十)
if(a[i]<50)c1十+;elsec2+十;
cout<}
输出结果:
4.#include
intLB(int*a,intn){
intp=1;
fOr(inti=0;ip*=*a;a++;
}
returnp;
}
vOidmain(){
inta[5]={1,2,3,4,3};
cout<}
输出结果:
5.井include
structWOrker{
charname[15]//姓名
intage;//年龄
floatpay;//工资
};
vOidmain(){
WOrkerx={”wangfong",46,1640};
WOrkery,*p;
y=x;p=&x;
cout<pay*2<}
输出结果:
四、写出下列每个函数的功能(每小题8分,共24分)
1.doubleFI(intn){//n为大于等于1的整数
dOublex,y=0;
do{
cin>>xZ
y+=x*x;
}while(——n);
returny;
}
函数功能:
2.b001WE(inta[],intb[],intn){
fOr(inti=0;iif(a[i]!
=b[i])break;
if(i==n)returntrue;returnfalse;
}
函数功能:
3.intLK(inta[],intn){
dOubles=0;
inti,m=0;
fOr(i=0;iS=s/n;
for(i=0;i=s)m+十;
returnm;
}
函数功能:
五、按题目要求编写函数(6分)
假定一个函数声明为“IntFF(inta[],intn);”,要求递归求出数组a中所有n个元素之
积并返回。
试卷代号:
1075
中央广播电视大学—第二学期“开放本科”期末考试
C++语言程序设计试题答案及评分标准
(供参考)
7月
一、单选题(每小题2分,共20分)
1.B2.D3.A4.C5.C
6.A7.A8.B9.B10.A
二、填空题(每小题2分,共20分)
1.COnSt
2.2‘pow(x,5)
3.x<=y//x==10
4.4
5.DataType
6.0
7.25
8.12
9.8
10.11
三、写出下列每个程序运行后的输出结果(每小题6分,共30分)
1.s=84
2.6,15//每个数据3分
3.62//每个数据3分
4.72//6分
5.563280//每个数据3分
四、写出下列每个函数的功能(每小题8分,共24分)
评分标准:
每题与参考答案的叙述含义相同者得8分,否则酌情给分。
1.求出从键盘上输入的n个整数的平方和并返回。
2.判断具有n个元素的两个数组a和b中对应元素值是否全部相等,若是则返回真,否则
返回假。
3.统计出数组aLn)中大于等于其平均值的元素个数并作为函数值返回。
五、按题目要求编写函数(6分)
评分标准:
根据编程的完整情况酌情给分。
intFF(inta[],intn)
{
if(n——1)returna[n—1];//2分
elsereturna[n—1)*FF(a,n—1);//6分
//或者if(n=:
0)returnl;
//elsereturna[n一1]*FF(a,n一1);
}