电大本科C语言程序设计期末复习题Word文档下载推荐.docx
《电大本科C语言程序设计期末复习题Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《电大本科C语言程序设计期末复习题Word文档下载推荐.docx(25页珍藏版)》请在冰豆网上搜索。
B.MAIN
C.name
D.function
4.设x和y均为bool量,则x&
&
y为真的条件是
A.它们均为真
B.其中一个为真
C.它们均为假
D.其中一个为假
5.下列表达式中正确的是
(k++)++
k---j
k--/=5
(k+3)=5
6.执行下面程序段的输出结果是
intx=4,y=-55;
if(x>
0)if(x>
10)cout<
<
”AA”elsecout<
”BB”
elseif(y<
-8)if(y>
-20)cout<
”CC”elsecout<
”DD”;
A.AA
B.BB
C.CC
D.DD
7.下面四个程序段中,输出23个*号的程序段是
C
A.for(inti=1;
i<
23;
i++)cout<
’*’;
B.for(inti=23;
i>
=0;
i--)cout<
C.inti=23;
while(i>
0){cout<
i--;
}
D.inti=0;
while(0<
=23){cout<
i++;
8.在下面的一维数组定义中,哪一个有语法错误。
A.
int
a[]={1,2,3}
B.
int
a[10]={0}
C.
a[]
D.
a[5]
9.假定a为一个整型数组名,则元素a[4]的字节地址为
A.a+4
B.a+8
C.a+16
D.a+32
10.要定义一个int型二维数组a,并使其各元素具有初值:
2
3
0
0
4
5
则正确的定义语句是
A.inta[][]={2,3,0,0,4,0,5,0,0,0,0,0};
B.inta[][4]={2,3,0,0,4,0,5,0,0,0,0,0};
C.inta[3][4]={{2,3},{4,,5}};
D.inta[][]={{2,3,0,0},{4,0,5,0},{0,0,0,0}};
11.在下面的函数声明中,存在着语法错误的是
void
BC(int
a,int)
BD(int,int)
C.
BE(int,int=5)
BF(int
x;
y)
12、下面的哪个保留字不能作为函数的返回类型?
A.void
B.int
C.new
D.long
13.已知intf(int);
和intg(int);
分别是函数f和g的原型。
下列语句中,将函数f作为语句调用的有
A.f(3)+g(3);
B.p/=f(3);
C.g(f(3));
D.f(g(3));
14.已知一函数的形参说明为intarr[5][6],在下列说明中,及此等效的形参说明为
A.intarr[][]
B.int[5][]
C.int*a[6]
D.int(*a)[6]
15.已知函数f的原型是:
intf(chara,char*b=NULL,doublec=0.0);
则下列调用中,不能正确地调用f函数的是
A.f(99)
B.f(‘A’,4.5)
C.f(‘A’,”123”)
D.f((char)65,”123”)
16.已知一函数的原型是:
intf(int,int=0,double=0.0);
则下列函数中可以加以重载的是
A.intf(int);
B.intf(int,int);
C.f(int,int,double);
D.f(intdouble);
17.已知一函数中有下列变量定义,其中属于静态变量的是
A.inta=5;
B.staticdoubleb;
C.registercharc;
D.autoshortd;
18.已知一个运行正常的的程序中有下面两个语句:
*p1,*p2=&
a;
p1=b;
由此可知,变量a和b的类型分别是
A.int和int
B.int*和int
C.int*和int
D.int*和int*
19.假设p是一指针变量,下列表达式中正确的是
A.++p++
B.(++p)++
C.++(p++)
D.p++-=3
20.设有程序段如下:
intk;
intA[10];
则下列表达式中,及元素A[k]等效的是
A.A+k
B.*A+k
C.*(A+k)
D.A+*k
21.设有数组定义
inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};
则表达式*(*(a+2)+1)的值是
A.5
B.6
C.9
D.10
22.要使语句:
p=newint[10];
能够正常执行,p应定义为:
C
A.intp;
B.intp[10];
C.int*p;
D.int(*p)[10];
23.已知函数f的原型为:
voidf(int&
a,char*b);
变量s,t的定义是:
ints;
chart[]=”ABCD”;
把s和t分别作为第一参数和第二参数来调用函数f,正确的调用语句是:
A.f(&
s,&
t);
B.f(&
s,t);
C.f(s,t);
D.f(s,&
24.设有如下定义
struct
Person{
char*name;
char*sex;
age;
float
pay;
}p={“李小莉”,”女”,23,370};
则下列语句中正确的是
A.
cout<
(*p).name<
endl
p->
name<
endl
<
(*p).sex<
sex<
(*p).age<
age<
(*p).pay<
endl;
pay<
C.
p[name]<
p.name<
p[sex]<
p.sex<
p[age]<
p.age<
p[pay]<
p.pay<
25.设有定义如下:
union
ABC{
char
ch;
ia;
*ipa;
double
db;
};
则表达式sizeof(ABC)的值是
17
8
1
26.假定AB为一个类,则该类的拷贝构造函数的声明语句为
AB&
(AB
x)
B.
AB(AB
x)
&
)
AB(AB*x)
27.对于结构中定义的成员,其隐含访问权限为
public
protected
private
static
28.当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为
ios:
:
in
out