C语言谭浩强版本第三章课后练习题答案

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

第三章课后练习题

一、单项选择题

1.根据C语言的语法规则,不能做变量名的是:

A)do

B)Name

C)R5

D)_exam

2.下列四组选项中,全是C语言关键字的选项是:感觉没有答案

A)define IF type

B)getc char printf :printf是函数名

C)include case scanf :同上

D)while go pow :同上

3.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符:

A)必须为字母

B)必须为下划线

C)必须为字母或下划线

D)可以是字母、数字和下划线中任一种字符

4.在C语言中,合法的字符常量是:

A) 3

B)‘S’

C)'ab'

D)"A"

5.若已定义x和y为double类型,则表达式:x=1,y=x+3/2中y的值是:

A) 1

B) 2

C) 3

D) 2.5

6.C语言提供的不合法的数据类型关键字是:

A)double

B)short

C)integer

D)char

7.合法的C语言中,合法的字符串是:

A)'\t'

B)"A"

C)‘a’

D)‘a\t’

8.执行语句int a=5; a++;后,a的值是:

A)7

B) 6

C) 5

D) 4

A)

9.以下选项中属于C语言的数据类型是:

A)复合型

B)双精度型

C)数学型

D)集合型

10.Vc6.0下各种基本数据类型的存贮空间正确的长度排列是:

A)int< Char<=float

B)Double

C)Char

D)Float<=int

11.下面的变量说明中正确的是:

A)char:a, b, c;

B)char a; b; c;

C)char a, b, c;

D)char a, b, c

12.sizeof(double) 语句执行结果的数据类型是

A)一种函数调用

B)一个双精度型表达式

C)一个整型表达式

D)一个不合法的表达式

13.以下程序的输出结果是:

int a=1,b=4,c=2;float x=10.5,y=4.0,z;z=(a+b)/c+sqrt((double)y)*1.2/c+x; pritnf("%f\n",z);

A.14.000000

B.15.400000

C.13.700000

D.14.900000

14.下面四个选项中,均是不合法的整型常量的选项是:

A)--0f1 -0xffff 0011

B)-0Xcdf 017 12,456

C)-018 999 5e2

D)-0x48eg -068 03f

15.下面四个选项中,均是不合法的浮点数的选项是:

A)160.0.12 e3

B)123 2e4.2 .e5

C)-.18 123e4 0.0

D)-e3 .234 1e3

16.下面四个选项中,均是不合法的转义字符的选项是:

A)‘\‛’‘\\’‘\xf’

B)‘\1011’‘\’‘\a’

C)‘\011’‘\f’‘\}’

D)‘\abc’‘\101’‘xlf’

17.若有说明语句:char c=‘\72’;则变量c:

A)包含1个字节B)包含2个字节

C)包含3个字节D)说明不合法,c的值不确定

18.表达式18/4*sqrt(4.0)/8值的数据类型为:

A)int B)float C)double D)不确定19.设有如下的变量定义:int i=8, k, a, b; unsigned long w=5; double x=1.42, y=5.2;则以下符合C语言语法的表达式是:没有答案????

A)k=k/0;:除数不为0

B)x%(-3);:浮点数不能参加%运算

C)a*3=2;:左边不能为表达式

D)y=float(i);:(float)i

20.假定有以下变量定义,int k=7,x=12;则能使值为3的表达式是:

A)x%=(k-5)

B)x= x% (k-k%5)

C)x= x-k-k%5

D)(x/k)-(k%5)

21.设x和y均为int型变量,则以下语句:x+=y,y=x-y;x-=y;的功能是:

A)把x和y按从大到小排列

B)把x和y按从小到大排列

C)无确定结果

D)交换x和y中的值

22.以下程序int a=12,b=12; printf("%d,%d\n",--a,++b);的输出结果是:

A)10 10

B)12 12

C)11 10

D)11 13

23.以下程序int a=5;float x=3.1; a=x*(‘E’- ‘A’);printf(‚%f\n‛,(float)a);输出结果是

A)12.000000

B)12.800000

C)13.000000

D)12

24.下面不正确的赋值语句是:

A)a=a+1

B)a= =b

C)a+=b

D)a=1

相关文档
最新文档