试卷号1075C++语言程序设计2015年7月电大期末考试答案

国家开放大学(中央广播电视大学)201.5年春季学期“开放本科”期末考试
2015年7月  试卷代号:1075  C++语言程序设计 试题

一、单选题(每小题2分,共20分)
1.循环体至少被执行一次的语句为( )语句。
A. for循环 B.while循环
C. do循环 D.任一种循环
2.假定,为一个整型数组名,则元素a[4]与( )的表示等价。
A.a+4 B.*a+4
C. *(a+4) D.*(a+16)
3.由C++源程序文件编译而成的目标文件的缺省扩展名为( )。
A.obj B.lik
C.exe D.cpp
4.在下面的二维数组定义中,只有( )语句是正确的。
A.inta[5][]; B.inta[](10);
C.inta[][]; D.inta[][5]={{1,2,3},{4,5}};
5.程序运行中需要从键盘上输人多于一个数据时,各数据之间应使用( )符号作为分隔符。
A.空格或逗号 B.逗号或回车
C. 逗号或分号 D.空格或回车
6.设x是一个b001型的逻辑量,y的值为10,则表达式x&&y的值为( )。
A.1 B.0
C. 与x值相同 D. 与x值相反
7.若函数声明为double*function(),则该函数的返回值为( )。
A.实数型 B.实数指针型
C. 函数指针型 D. 数组型
8.假定变量m定义为"int m=7;”,则定义变量p的正确语句为( )。
A.int p=&m; B. int *p=&m;
C. int&p=*m; D. int *p=m;
9.假定AB为一个类,则执行"AB a(4),b[5],p[5]”语句时,自动调用该类构造函数 的次数为( )。
A.4 B. 5
C.6 D.14
10.当需要使用ifstream流类定义一个流对象并联系—个磁盘文件时,应在文件开始使用 #include命令,使之包含( )头文件。
A.strstrea.h B.stdlib.h
C.iostream.h D.fstream.h
二、填空题(每小题2分,共20分)
11.假定一个枚举类型的定义为"enum RA{ab,ac,ad,ae};”。则ac的值为一一一——。
12.若x=5,y=15,则x>y的逻辑值为—一—--一—。
13.假定x=7,则表达式3+x++的值为一——。
14.假定一维数组定义为"int a[6];”,则该数组所含元素的个数为—一一——一—。
15.设p指向一个类的动态分配的对象,则执行"delete P;”语句时,将自动调用该类的 ————一—一。
16.执行"cout<<char(’A’+4);”语句后得到的输出结果为一一一—一。
l7. 在C++每个程序行的后面或单独—行的开始使用注释的标记符为————————一—。
18.假定—个结构类型的定义为“struct A{double a,b;A * c};”,则该类型的大小为 字节。
19. 假定—个二维数组的定义为"inta[3][6];”,则该数组含有——-——个元素。
20.在定义类对象的语句执行时,系统在建立每个对象的过程中将自动调用该类的
一一————使其初始化。
三、写出下列每个程序的运行结果(每小题6分,共36分)
21.. # include
int WF(int x,int y){
x= x+y;
y= x+y;
return x+y; }
void main() {
cout<<WF(8,5) <<end1;
}
运行结果:
22. # include<iostream, h>
void main() {
int a[6]= {36,25,48,14,55,40};
int bl =a[O]
for(int i=l ;i<6;i++) if(a[i]>bl) bl =a[i];
cout<<"bl="<<bl<<endl;
}
运行结果:
23. #include
void main() {
int a[10]={12,39,26,41,55,63,72,40,83,95};
int i0=0,il=0,i2=0;
for(int i=0;i<10;i++)
switch(a[i] %3) {
case O: i0++;break;
case 1: il++;break;
case 2: i2++
}
cout<<iO<<’’<<il<<’’<<i2<<endl;
运行结果:

24. # include<iostream, h>
void main() {
inta[3][4]={{1,2,7,8},{5,6,11,15),{9,20,3,4}};
int m=a[O][O];
for(int i=0;i<3;i++)
for(int j=O;j<4;j++) if(a[i][j]>m) m=a[i][j],
cout<<m<<endl
}
运行结果:

25. # include<iostream, h>
include<string, h>
void main() {
char * a[5] = { "student", "worker", "cadre", "soldier", "apen" }
unsigned int n = strlen(a[O]);
for(int i=1;i<5;i++) { if(strlen(a[i])>n) n=strlen(a[i]);
}
cout<<n<<endl
}
运行结果:

26. 8 include<iostream, h>
struct AB{
char aa[15]
int bb;
};
void main() {
AB a[4]= { { "Apple" ,25}, {"Peach" ,40}, {"Pear" ,36}, {"Tomato" ,62} };
for(int i=0; i<4; i++)
if(a[i], bb<35) cout<<a[i], aa<<' ';
cout<<endl;
}
运行结果:
四、写出下列每个函数的功能(每小题8分,共24分)
27. int Fun(int a[],int n){
double s=0;
int i, m=0;
for(i=0;i<n;i++) s+ =a[i]
s= s/n;
for(i=0;i<n;i++) if(a[i]>=s) m++;
return m;
}
函数功能:

28. int WG(int a,int b){
if(a>0 &&b>0) return 1;
else if(a else return 0;
}
函数功能:
29.假定结构类型DNode中的data域为结点值域,next域为结点指针域,f指向单链表的表头结点。
void QB(DNode * f)
(
if(f= = NULL) return
while(f! =NULL) (
cout<data<<' ' f=f->next;
函数功能:

© 版权声明
THE END
文章不错?点个赞呗
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容