tails-bitter
《
C
语言程序设计》期末复习题
一、选择题
1.
由
C
语言源程序文件编译而成的目标文件的缺省扩展名为
( )
。
A. cpp B. exe C. obj D. C
2. C
语言程序的基本模块为(
)
。
A.
表达式
B.
标识符
C.
语句
D.
函数
3.
设
x
和
y
均为逻辑值,则
x||y
为假的条件是(
)
。
A.
它们均为真
B.
其中一个为真
C.
它们均为假
D.
其中一个为假
4. x>0 || y==5
的相反表达式为(
)
。
A. x<=0 || y!=5 B. x<=0 && y!=5
C. x>0 || y!=5 D. x>0 && y==5
5.
在下面的字符数据定义中,
(
)语句有语法错误。
A. char a[20]=
”
abcdefg
”
;
B. char a[]=
”
x+y=55
”
;
C. char a[15]={
‘
1
’
,
’
2
’
};
D. char a[10]=
’
5
’
;
6.
若用数组名作为函数调用的实参,传递给形参的是(
)
。
A.
数组的首地址
B.
数组中第一个元素的值
C.
数组中全部元素的值
D.
数组元素的个数
7.
假定
a
为一个整型数组名,则元素
a[4]
的地址比该数组的首地址大( )
个字节。
A. 4 B. 8 C. 16 D. 32
8.
下列给字符数组赋初值时,正确的是(
)
。
A. char s1[]=
C. char s3[2][3]={
A. char *p=s; B. char *p=&s; C. char *p;p=*s; D. char *p; p=&s;
9.
变量
s
已定义为“
char *s=
”
Hello wor ld!
”
;
”要使变量
p
指向
s
所指向的同一个< br>字符串,则定义为(
)
。
A. char *p=s;
B. char *p=&s;
C. char *p;p=*s;
D. char *p;p=&s;
10.
要使
p
指向二维整型数组
a[10][20]
,< br>p
应定义为(
)
。
A. int *p=a; B. int **p=a; C. int *p[20]=a; D. int(*p)[20]=a;
11.
若有以下说明和语句,则输出结果是(
)
。
char s[12]=
printf(
A. 12; B. 8; C. 7; D. 11;
12
.下列程序语句的输出结果是(
)
。
char sp[]=
printf(
A. 14; B. 3; C. 9; D.
字符中有非法字符
;
13
.对于下列程序段,当输入“
welco me
”时,程序的输出结果是(
)
。
char m[20];
char n[30]=
gets(m);
strcat(n,m);
puts(n);
you are are you
are welcome arewelcome
14.
当输入“
jianqiao2012
”时,下列程序段的输出结果是(
)
。
char st[20];
char stt[]=
gets(st);
strlwr(st);
strcat(st,stt);
puts(st);
语言可以执行程序从(
)开始执行。
A
.程序中的第一条可执行语句
B
.程序中的第一个函数
C
.程序中的
main
函数
D
.包含文件中的第一个函数
16
.若定义如下函数:
sub(int
x)
{ float
y;
y=3*x-4?;
return y?;
}
则该函数的数据类型是(
)
。
A
.
int
B
.不确定
C
.
void
17.
在下面关于
C
函数定义的叙述中,正确的是(
A
.函数可以嵌套定义,但不可以嵌套调用
B
.函数不可以嵌套定义,但可以嵌套调用
C
.函数不可以嵌套定义,也不可以嵌套调用
D
.函数可以嵌套定义,也可以嵌套调用。
18
.以下程序的输出结果是(
)
。
#include <>
main(
)
{
int a[]={1,2,3,4,5,6},*p;
p=a;
*(p+3)+=2;
printf(
}
A
.
1
,
6
B
.
2
,
4
C
.
1
,
4
19
.以下程序段:
int
*p,a,b=1?;
p=&a?;*p=10?;a=*p+b?;
B.11
。
D
.
2,6
D.
编译出错
)
20
.若有定义:
int i,j=2,*p=&i;,
则能完成
i=j
赋值功能的语句是(
)
。
A
.
i=*p;
B
.
*p=*&j;
C
.
i=&j;
=**p;
二、填空题
1.
表达式
x=x+y
表示成复合 赋值表达式为
_____
。
2.
关系表达式
(x==0)
的等价表达式为
________
。
3.
假定不允许使用逻辑非操作符,则逻辑表达式
x>3 && x<10
的相反表达式为
_______.
4
.若
x=5
,
y=10
,则
x!=y
的逻辑值为
____。
5.
假定
x=5
,则执行“
int a=(! x
10: 20)
;
”语句后
a
的值为
。
6.
若
while
循环的“头”为“
whi le
(
i++<=10
)
”
,并且
i
的初值为0
,同时在循环体
中不会修改
i
的值,则循环体将被重复执行
_ _________
次后正常结束。
7.
假定二维数组的定义为“
char a[3][5]
;
”
,则该数组 所含元素的个数为
_____
。
8.
假定二维数组的定义为
“
char
a[M][N];
”
,
则该数组所占存储空间的字节数为
_
。
9.
执行“
typedef int ABC[1 0]
;
”语句把
ABC
定义为具有
10
个整型元素的
________
类型。
函数用于计算一个字符串的
______
。
11. st rcat
函数用于把一个字符串
____
到另一个字符串之后的存储空间中。
12
.函数中的形参变量的初值由调用该函数时对应的
_____
值决定。< br>
13.
程序的编译是以
__________
为单位进行的。
14.
假定
p
所指对象的值为
25
,
p+1
所指 对象的值为
46
,则执行“
(
*p
)
++
;
”语句后,
p
所指对象的值为
____
。
15.
假定
a
是一个一维数组,则
a[i]
的指针访问方式为
__ ______
。
16.
假定
p
是一个指向整数 对象的指针,则用
________
表示该整数对象。
17
.
在
C
语言中,凡不参加类型说明的函数,自动按
处理。
18
.函数的实参传递到形参有两种方式
:
和
。
三、
写出下列每个程序运行后的输出结果
1. #include <>
void main()
{
int i,a[10];
for(i=0;i<=8;i++)
a[i]=i;
for(i=8;i>=0;i--)
printf(
printf(
}
2. #include <>
main()
{ char c[10]={'I',' ','a','m',' ','a',' ','b','o','y'};
int i;
for(i=0;i<10;i++)
printf(
printf(
}
3.
#include <>
void main()
{ char diamond[][5]={{' ', ' ','*'},{
‘
','*',' ','*'},
{'*', ' ',
‘
', ' ' ,'*'},{' ','*', ' ','*'},{' ', ' ','*'}};
int i,j;
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
printf(
printf(
}
}
4. main()
{ int a,b,c;
scanf(
c=max(a,b);
printf(
}
max(int x, int y)
{ int z;
z=x>y?x:y;
return(z);
}
5. #include<>
void main() {
int a[8]={36,25,48,24,55,40,18,20};
int i, b1, b2;
a[0]<=a[1] (b1=a[0], b2=a[1]):(b1=a[1],b2=a[0]);
for(i=2; i<8; i++)
if(a[i]
}
6.
#include<>
void main()
{
int a[10]={76,63,54,62,40,75,80,,84,44,73};
int b[4]={60,70,90,101};
int c[4]={0};
int i,j;
tails-bitter
tails-bitter
tails-bitter
tails-bitter
tails-bitter
tails-bitter
tails-bitter
tails-bitter
本文更新与2021-01-21 09:01,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/543302.html
-
上一篇:低年级群文阅读教学“四步走”
下一篇:最全的电子图书下载网址