C语言复习文档格式.docx
- 文档编号:6423819
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:57
- 大小:34.40KB
C语言复习文档格式.docx
《C语言复习文档格式.docx》由会员分享,可在线阅读,更多相关《C语言复习文档格式.docx(57页珍藏版)》请在冰点文库上搜索。
24.设inti=5;
则循环语句while(i>
=1)i--;
执行后,i的值为【1】.0
25.调用fopen函数打开一文本文件,在"
使用方式"
这一项中,为输入而打开需填入【1】.r
26.从函数的形式上看,函数分为无参函数和【1】两种类型.有参函数
27.C程序中有且仅有一个【1】函数.main
28.从变量的作用域角度分有全局变量和【1】.局部变量
29.设有下面的程序段
intx=0,y=0,t;
t=x&
++y;
执行语句后y的值为【1】.0
30.若有定义:
chars[]="
china"
则VisualC++系统为数组s开辟【1】个字节的内存单元.6
31.写出语句b=(a=6,a*3);
执行后整型变量b的值是【1】.18
32.当a=1,b=1,c=1时,表达式a<
b<
c的值是【1】.1
33.设y为int型变量,请写出描述"
y为奇数"
的表达式【1】.y%2!
=0=========或=========y%2==1
34.在C语言中的实型变量分为两种类型,它们是float型和【1】型.double
35.【1】语句,只能用在循环中,以中断某次循环,继续下一次循环.continue
36.unionun1
{inta;
charb;
floatc;
}x;
上述定义的共同体变量x共占用存储空间【1】个字节.4
37.已知i=5,写出语句a=i++;
执行后整型变量a的值是【1】.5
38.计算a、b中最小值的条件表达式为【1】.a<
b?
b
39.一个C源程序中至少应包括一个【1】函数.main
40.C语言中一个函数由函数首部和【1】两部分组成.
函数体
41.已知a=10,b=15,c=1,d=2,e=0,则表达式c==b>
e的值为【1】.1
42.若有以下定义和语句:
inta[5]={1,3,5,7,9},*p;
则++(*p)的值是【1】.6
43.在函数调用中,若实参为数组名,则形参必须为数组名或【1】.指针变量
44.已知i=5;
写出语句i+=012;
执行后整型变量i的十进制值是【1】.15
45.C语言中调用【1】函数来关闭文件.fclose
46.程序段intk=10;
while(k=0)k=k-1循环体语句执行【1】次.0
47.若在程序中用到"
strlen()"
函数时,应在程序开头写上包含命令#include"
【1】"
.string.h
48.当程序读写数据文件时,需要有声明语句"
FILE*fp;
在该声明语句之前必须包含的头文件名为【1】.stdio.h
二、单项选择
1.设变量定义为"
intx,*p=&
x;
则&
(*p)相当于A
A:
pB:
*pC:
xD:
*(&
x)
2.C语言中要求对变量作强制定义的主要理由是().D
便于移植B:
便于写文件
C:
便于编辑预处理程序的处理
D:
便于确定类型和分配空间
3.设有以下说明语句
structex
{intx;
floaty;
charz;
}example;
则下面的叙述中不正确的是().B
struct结构体类型的关键B:
example是结构体类型名
x,y,z都是结构体成员名D:
structex是结构体类型
4.C语言中不可以嵌套的是().B
函数调用B:
函数定义C:
循环语句D:
选择语句
5.在C语言中,if语句后的一对原括号中,用以决定分支的流程的表达式().D
只能用逻辑表达式B:
只能用关系表达式
只能用逻辑表达式或关系表达式D:
可用任意表达式
6.C语句"
x*=y+2;
还可以写作().C
x=x*y+2;
B:
x=2+y*x;
x=x*(y+2);
D:
x=y+2*x;
7.对以下说明语句inta[10]={6,7,8,9,10};
的正确理解是().B
将5个初值依次赋给a[1]至a[5]
B:
将5个初值依次赋给a[0]至a[4]
将5个初值依次赋给a[6]至a[10]
因为数组长度与初值的个数不相同,所以此语句不正确
8.C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是().B
voidB:
intC:
floatD:
double
9.设已有声明"
intx[]={1,2,3,4,5,6},*p=&
x[2];
则值为3的表达式是().B
*++pB:
*(p++)C:
++*pD:
*p+1
10.判断char型变量cl是否为小写字母的正确表达式是().D
'
a'
<
=cl<
='
z'
(cl>
=a)&
(cl<
=z)
('
>
=cl)||('
=cl)D:
)&
)
11.下面说明不正确的是().D
chara[10]="
chara[10],*p=a;
p="
char*a;
a="
chara[10],*p;
p=a="
12.设有说明"
intx=3,y=4;
则"
++x>
y--?
x:
y"
的值为().D
4B:
1C:
2D:
3
13.设有说明:
charc;
intx;
doublez;
则表达式c*x+z值的数据类型为D
floatB:
charD:
14.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是().C
1B:
2C:
2.0D:
2.5
15.设变量定义为"
inta,b;
执行下列语句时,输入_____,则a和b的值都是10.D
scanf("
a=%d,b=%d"
&
a,&
b);
1010B:
10,10
a=10b=10D:
a=10,b=10
16.数组名作为实参数传递给函数时,数组名被处理为().C
该数组的长度B:
该数组的元素个数
该数组的首地址D:
该数组中各元素的值
17.两个指针变量不可以().A
相加B:
比较C:
相减D:
指向同一地址
18.下列()表达式的值为真,其中a=5;
b=8;
c=10;
d=0D
a*2>
8+2B:
a&
d
C:
(a*2-c)||dD:
a-b<
c*d
19.对两个数组a和b初始化如下:
chara[]="
abc"
charb[]={'
'
b'
c'
};
则以下叙述正确的是().D
a与b数组完全相同B:
a与b数组长度相同
a与b中都存放字符串D:
a数组比b数组长度长
20.若有以下定义:
chars='
\092'
则该语句().B
使s的值包含1个字符B:
定义不合法,s的值不确定
使s的值包含4个字符D:
使s的值包含3个字符
21.能正确表示逻辑关系:
a≥10或a≤0"
的C语言表达式是D
a>
=10ora<
=0B:
=0|a<
=10C:
=10&
a<
=0D:
=10||a<
=0
22.下列字符序列中,不可用作C语言标识符的是().B
b70B:
#abC:
symbolD:
a_1
23.系统的标准输入文件是指().A
键盘B:
显示器C:
软盘D:
硬盘
24.若给定条件表达式(M)?
(a++):
(a--),则其中表达式M().C
和(M==0)等价B:
和(M==1)等价
和(M!
=0)等价D:
=1)等价
25.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是().B
7B:
8C:
6D:
2
26.库函数在使用时,要用()A
#include命令B:
#define命令C:
#ifD:
#else
27.C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符().C
必须为字母B:
必须为下划线
必须为字母或下划线
可以是字母,数字和下划线中任一字符
28.已定义两个字符数组a,b,则以下正确的输入格式是A
scanf("
%s%s"
a,b);
get(a,b);
&
gets("
a"
),gets("
b"
);
29.以下不能正确进行字符串赋初值的语句是().A
charstr[5]="
good!
charstr[]="
char*str="
charstr[5]={'
g'
o'
d'
0};
30.不正确的字符串赋值或赋初值的方式是().C
string"
charstr[7]={'
s'
t'
r'
i'
n'
charstr[10];
str="
'
\0'
31.关于建立函数的目的,以下正确的说法是().B
提高程序的执行效率
提高程序的可读性
减少程序的篇幅
减少程序文件所占内存
32.以下标识符中,不能作为合法的C用户定义标识符的是().B
a3_b3B:
voidC:
_123D:
IF
33.若变量均已正确定义并赋值,以下合法的C语言赋值语句是A
x=n/2.5;
x==5;
x+n=I;
5=x=4+1;
34.若有声明"
intx[10]={0,1,2,3,4,5,6,7,8,9},*p"
则值不为4的表达式是().C
p=x,*(p+4)B:
p=x+4,*p++
p=x+3,*(p++)D:
p=x+3,*++p
35.以下的选择中,正确的赋值语句是().C
a=1,b=2B:
j++C:
a=b=5;
y=int(x)
36.gets函数的功能是()B
读取从键盘输入的一串不带空格的字符串
读取从键盘输入的一串带空格的字符串
读取从键盘输入的一串不带数字的字符串
读取从键盘输入的一串只带字母的字符串
37.若已定义x为int类型变量,下列语句中说明指针变量p的正确语句是().C
intp=&
int*p=x;
int*p=&
*p=*x;
38.执行语句for(i=1;
i++<
4;
后变量i的值是().C
3B:
4C:
5D:
不定
39.字符串指针变量中存入的是B
字符串B:
字符串的首地址
第一个字符D:
字符串变量
40.变量s的定义为char*s="
helloworld!
;
要使用变量p指向s所指向的同一个字符串,则应选取().A
char*p=s;
char*p=&
s;
char*p;
p=*s;
char*p;
p=&
41.在C语言中,函数的数据类型是指()A
函数返回值的数据类型
函数形参的数据类型
调用该函数时的实参的数据类型
任意指定的数据类型
42.经过以下语句定义后,表达式z+=x>
y?
++x:
++y的值为().C
intx=1,y=2,z=3;
2B:
3C:
5
43.若用数组名作为函数的实参,传递给形参的是().A
数组的首地址B:
数组第一个元素的值
数组中全部元素的值D:
数组元素的个数
44.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量'
\101'
是().A
字符AB:
字符aC:
字符eD:
非法的常量
45.设C语言中,int类型数据占2个字节,则long类型数据占().C
1个字节B:
2个字节C:
4个字节D:
8个字节
46.下列运算符中,不属于关系运算符的是().D
=D:
!
47.下列字符数组长度为5的是A
chara[]={'
h'
charb[]={'
charc[10]={'
chard[6]={'
};
48.设有说明语句chara='
则变量a().D
包含4个字符B:
包含2个字符
包含3个字符D:
包含1个字符
49.当定义一个结构体变量时,系统分配给它的内存是().A
各成员所需内存量的总和
结构中第一个成员所需内存量
结构中最后一个成员所需内存量
成员中占内存量最大者所需的容量
50.能将高级语言编写的源程序转换为目标程序的是().C
链接程序B:
解释程序C:
编译程序D:
编辑程序
51.具有相同类型的指针变量p与数组a,不能进行的操作是().D
p=a;
*p=a[0];
a[0];
a;
52.为了避免在嵌套的条件语句if—else中产生二义性,C语言规定:
else总与()配对B
缩排位置相同的ifB:
其之前最近的未配对的if
其之后最近的ifD:
同一行上的if
53.设有说明:
charw;
则表达式w*x+z-y值的数据类型为().D
54.整型变量x=1,y=3,经下列计算后,x的值不等于6的是C
x=(x=1+2,x*2)B:
x=y>
2?
6:
5C:
x=9-(--y)-(y--)D:
x=y*4/2
55.若有定义:
intaa[8];
则以下表达式中不能代表数组元aa[1]的地址的是().C
aa[0]+1B:
aa[1]C:
aa[0]++D:
aa+1
56.若有定义inta[10],*p=a;
则p+5表示A
元素a[5]的地址B:
元素a[5]的值
元素a[6]的地址D:
元素a[6]的值
57.C语言中运算对象必须是整型的运算符是().A
%=B:
/C:
〈=
58.若二维数组a有m列,则在a[i][j]前的元素个数为().B
j*m+iB:
i*m+jC:
i*m+j-1D:
i*m+j+1
59.从循环体内某一层跳出,继续执行循环外的语句是A
break语句B:
return语句
continue语句D:
空语句
60.以下运算符中,优先级最高的运算符是().D
=B:
=C:
*(乘号)D:
()
61.逻辑运算符两侧运算对象的数据类型().D
只能是0或1B:
只能是0或非0正数
只能是整型或字符型数据D:
可以是任何类型的数据
62.若i为整型变量,则以下循环执行次数是().B
for(i=2;
i==0;
)printf("
%d"
i--);
无限次B:
0次C:
1次D:
2次
63.逗号表达式"
(a=3*5,a*4),a+15"
的值是().C
15B:
60C:
30D:
不确定
64.fscanf函数的正确调用形式是().D
fscanf(fp,格式字符串,输出表列);
fscanf(格式字符串,输出表列,fp);
fscanf(格式字符串,文件指针,输出表列);
fscanf(文件指针,格式字符串,输入表列);
65.C语言的switch语句中case后B
只能为常量
只能为常量或常量表达式
可为常量或表达式或有确定值的变量及表达式
可为任何量或表达式
66.设变量a是整型,f是实型,i是双精度型,则表达式10+'
+i*f值的数据类型为().C
intB:
floatC:
doubleD:
67.下列标识符中,不合法的C语言用户自定义标识符是().B
printfB:
enumC:
_D:
sin
68.以下定义语句中,错误的是().D
inta[]={1,2};
char*a[3];
chars[10]="
test"
intn=5,a[n];
69.若有下列定义,则对a数组元素地址的正确引用是().B
inta[5],*p=a;
a[5]B:
p+2C:
a++D:
a
70.在C语言程序中().B
函数的定义可以嵌套,但函数的调用不可以嵌套
函数的定义不可以嵌套,但函数的调用可以嵌套
函数的定义和函数调用均可以嵌套
函数的定义和函数调用不可以嵌套
71.设有定义"
floaty=3.45678;
intx;
则以下表达式中能实现将y中数值保留小数点后2位,第3位四舍五入的表达
式是().D
y=(y*100+0.5)/100.0B:
y=(y/100+0.5)*100.0
y=y*100+0.5/100.0D:
x=y*100+0.5,y=x/100.0
72.若有说明:
inta[][3]={1,2,3,4,5,6,7};
则a数组第一维的大小是().B
4D:
无确定值
73.已知结构类型定义和变量声明如下:
structsk
{inta;
floatb;
}data[2],*p;
若有p=data,则以下对data[0]中成员a的引用中错误的是().A
data[0]->
aB:
data->
a
p->
aD:
(*p).a
74.下列格式符中,可以用于以8进制形式输出整数的是().C
%dB:
%8dC:
%oD:
%1d
75.语句while(!
E);
中的表达式!
E等价于().A
E==0B:
E!
=1C:
E==1
76.对二维数组的正确说明是().B
inta[][]={1,2,3,4,5,6};
inta[][3]={1,2,3,4,5,6};
inta[2][]={1,2,3,4,5,6};
inta[2][3]={1,2,3,4,5,6,7}
77.下列数据中,为字符串常量的是().B
AB:
house"
Howdoyoudo.D:
$abc
78.函数调用:
strcat(strcpy(str1,str2),str3)的功能是D
将串str1复制到串str2中后再连接到串str3之后
将串str1连接到串str2之后再复制到串str3之后
将串str2连接到串str1之后再将串str1复制到串str3中
将串str2复制到串str1中后再将串str3连接到串str1之后
79.判断两个字符串是否相等,正确的表达方式是C
while(s1==s2)
while(s1=s2)
while(strcmp(s1,s2)==0)D:
while(strcmp(s1,s2)=0)
80.若有inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;
则输出结果不为5的语句为().D
*(a+5));
p[5]);
*(p+5));
*p[5]);
81.C语言程序中必须有的函数是().B
#include"
stdio.h"
main
printfD:
scanf
82.以下运算符中,优先级最高的运算符是().C
||B:
%C:
==
83.在下列程序段中,枚举变量c1,c2的值依次是().A
enumcolor{red,yellow,blue=4,green,white}c1,c2;
c1=yellow;
c2=white;
%d,%d\n"
c1,c2);
1,6B:
2,5C:
1,4D:
2,6
84.inta[10]={1,2,3,4,5,6,7,8};
int*p;
a[5];
p[-3]的值是().B
不一定
85.已知有如下的结构类型定义和变量声明:
structstudent
{intnum;
charna
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 复习
![提示](https://static.bingdoc.com/images/bang_tan.gif)