C语言期末复习卷习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C语言期末复习卷习题 Prepared on 24 November 2020

期末总复习(基础知识+程序设计部分)

一.填空

1.已知charch=’A’;则下列表达式的值是:a

Ch=(ch>=’A’&&ch<=’Z’)(ch+32):ch;

2.若x=1,y=2,z=3,则表达式z+=++x+y++之值是7

3.若x=2,y=3,则x%=y+3之值为2

4..若有定义inty=3;floatz=,x=;则表达式y+=(int)x+x+z的值为17

5.设x,y,z为int型变量,且x=3,y=-4,z=5,请写出下列各表达式的值

1)(x&&y)==(x||z)1

2)!(x>y)+(y!=z)||(x+y)&&(y-z)0

3)x++-y+(++z)13

6.设x,y,z为int型变量,请用C语言表达式描述下列命题

1)x和y中有一个小于z(xz||x>z&&y

2)x,y和z中有两个为负数

(x<0&&y<0&&z>=0||z<0&&y<0&&x>=0||y<0&&x<0&&z>=0)==1

3)y是奇数y%2!=0

7.下面for循环语句最多可执行4次

For(x=0,y=0;(y!=99)&&(x<4);x++)

8.设i,j,k均为int型变量,则执行以下for语句后,k的值是10

for(i=0,j=10;i<=j;i++,j--)

k=i+j;

9.若已知x,y,z,m,n均为int型变量,则执行下面语句后,x的值为7y的值为9z的值为7

m=10;n=5;

x=(--m==n++)--m:++n;

y=m++;

z=n;

10.若有说明语句:w=1,x=2,y=3,z=4;则表达式w>xw:z>yz:x值是4

11.若定义的函数没有返回值时,则应该在该函数定义时加上类型说明符void

12.凡在函数中未指定存储类型的变量,其隐含的存储类别为动态存储

13.在C语言中,一个函数直接或间接地调用自身,编构成函数的递归

14.如果被调用的自定义函数和调用函数不再同一个文件中,则在应以函数的文件中应将该文件的存储类型定义成型,在调用函数的文件中将该函数说明为型。

15.对于所定义的二维数组a[2][3],元素a[1][2]是数组的第6个元素。N*j+m+1

16.若有定义:char*str=”Iamastudent.”;则字符串在存储单元中占16个字节。

17.在执行inta[][3]={{1,2},{3,4}};语句后,a[1][2]的值是0。

18.调用strlen(“abc\0ef\0g”)的返回值是3。\0为停止符

19.设有定义:chars[12]=“string”;则printf(“%d\n”,strlen(s));的输出值是6

20.执行下列程序段后,*p等于3

inta[5]={1,3,5,7,9};*p=a;p++;

二.判断(trueorfalse)

1.调用函数时,实参的类型、个数和顺序与函数定义时形参的类型、个数和顺

序完全一致。T

2.函数可以嵌套定义F

3.函数必须有返回值,否则不能正确作用F

4.C程序中有调用关系的所有函数必须放在同一源程序文件中。F

5.全局变量与函数体内定义的局部变量重名时,局部变量不起作用。F

6.函数定义时可以不制定形参的类型,函数调用时由实参的类型决定形参的类

型F

7.当函数定义放在main()函数前面时,可以缺省函数声明。T

8.C语言中允许函数嵌套调用T

9.局部静态变量是在编译时赋初值的,即只赋一次初值。T

10.外部变量必须定义在文件的开头部分F

11.字符’\0’是字符串的结束标记,其ASCII码为

12.若有说明:inta[3][4]={0};则数组a中每个元素的初值都为

13.若有说明:inta[2][4]={0,0};则只有a[0][0]和a[0][1]的初值为0,其余元素

的初值均不为

14.若有说明:inta[3][4];则数组a中各元素可在程序的编译阶段达到初值

15.若用数组名作为函数调用时的实参,则实际上传递给形参的是数组的第一个

元素值。F

16.在两个字符串的比较中,字符个数多的字符串比字符少的字符串大。F

17.当需要接受用户从键盘上输入的含有空格的字符串时,应使用gets()函

数。T

18.在C语言中,二维数组元素在内存中的存放顺序可以随意调整变化。F

19.&b指的是变量b的地址处所存放的值;F

20.指针变量可用于保存同类型变量的地址值;F

21.存放地址的变量同其他类型的变量一样,可以存放任何类型的数据;F

22.指向同一数组的两指针p1,p2相减的结果与所指元素的下标相减的结果

是相同的。F

23.如果定义函数时参数是指针变量,那么,调用函数时的参数就可以是同

类型的指针变量,数组名或简单变量的地址T

24.char*name[5]定义了一个一维指针数组,它有5个元素,每个元素都

是指向字符数据的指针型数据。F

25.语句y=*p++;和y=(*p)++;是等价的。F

26.函数指针指向的是函数的入口地址。T

27.int*p;定义了一个指针变量,其值是整型的。F

28.用指针作为函数参数时,采用的是“地址传送”方式.T

三、选择题

1.下列变量名中哪些是合法的

2aa#C$t3_varint

2.语言中用________表示逻辑值“真”。

A)true B)整型值0C)非零整数值

D)T

3.下列合法的字符常量为________。

A)"a"B)'\n'C)'china'D)a

4.设有语句charc='\72';则变量c________。

A)包含1个字符B)包含2个字符C)包含3个字符D)不合法

5.字符串"\t\"Name\\Address\n"的长度为________。

A)19B)15C)18D)不合法

6.设a,b,c为int型变量,且a=3,b=4,c=5,下面表达式值为0的是

________。

A)'a'&&'b'B)a<=b

C)a||b+c&&b-c D)!((a

7.若有以下定义:

相关文档
最新文档