下列表达式中什么是正确的c语言字符常量,2015年计算机二级《C语言》精选练习题及答案(5)...

1[单选题] 下面关于“EOF”的叙述,正确的是

A.EOF的值等于0

B.EOF是在库函数文件中定义的符号常量

C.文本文件和二进制文件都可以用EOF作为文件结束标志

D.对于文本文件,fgetc函数读入最后一个字符时,返回值是EOF

参考答案:B

参考解析:在c语言中,或更精确地说成c标准函数库中表示文件结束符(end of file)。在while循环中以EOF作为文件结束标志,这种以EOF作为文件结束标志的文件,必须是文本文件。在文本文件中,数据都是以字符的ASCII代码值的形式存放。我们知道,ASCII代码值的范围是0~255,不可能出现-1,因此可以用EOF作为文件结束标志。

2[单选题] 以下叙述中正确的是

A.字符串常量“strl”的类型是:字符串数据类型

B.有定义语句:char strl[]="strl";,数组strl将包含4个元素

C.下面的语句用赋初值方式来定义字符串,其中,´\O´是必须的

141402734f201b45050d46c99b119ea5.png

D.字符数组的每个元素可存放一个字符,并且最后一个元素必须是´\0´字符

参考答案:C

参考解析:本题考查字符数组的相关操作,B选项中数组strl包含了5个元素,其中有结尾符,A选项中strl的类型不是字符串类型,字符数组的最后一个元素可以不是´\O´字符。

3[单选题] 以下选项中非法的C语言字符常量是(  )

A.'\x9d'B.'9'C.'\x09'D.'\09'

参考答案:D

参考解析:本题考查字符常量,字符常量是用单引号括起来的一个字符。例如:'a'、'='、'+'等。转义字符是一种特殊的字符常量。转义字符以反斜线“、”开头,后跟一个或几个字符。D选项中'\09',\0表示后面的字符是八进制数。又出现9所以是非法的。故D选项正确。

4[单选题]若有以下程序

6b0938d25b3feffc576b59eeea984ca6.png

则程序的输出结果是

A.1,2,3,4B.2,1,2,-1C.5,1,2,-1D.2,2,2,4

参考答案:D

参考解析:第一个if语句的判断条件中是逻辑或表达式,所以只要有一个运算对象为真结果就为真,且如果前面的已经为真,后面的表达式不再进行执行判断。执行第一个if判断条件时a的值为2,整个表达式的值为真,b的值不变,c的值为2。判断第二个if条件为逻辑与表达式。只有两个运算对象均非零,才为真,第一个表达式c==3,不成立,不再判断第二个运算对象,所以不执行d=-1操作和a=5操作。所以结果为选项D。

5[单选题] 若有定义int a:float b:double c;程序运行时输入:

345

能把值3输入给变量a、4输入给变量b、5输入给变量C的语句是

A.scanf("%d%f%If",&a,&b,&C.;

B.scanf("%d%If%If",&a,&b,&C.;

C.scanf("%d%f%f",&a,&b,&C.;

D.scanf("%If%If%If",&a,&b,&C.;

参考答案:A

参考解析:wad()函数的格式串中,必须含有与输入项一一对应的格式转换说明符,整型数据、float型数据、double型数据对应的格式转换说明符分别为%d、%f、%If所以选择A。

6[单选题] 若有以下程序

e0f4e9846ec6cd18d9e0f8e9615f922b.png

执行时若输入:

Fig flower is red.

则输出结果是

A.Fig flower is red.is blue.B.Fig flower is red.C.Fig floweris red.D.Fig floweris

参考答案:B

参考解析:本题考查字符数组的赋值以及字符串的处理函数,本题中输入字符串Fig flower is red时,首先是将前10个字符赋值给字符数组a,然后执行gets(B.后,将后续字符存放到b中,当输出时,首先输出字符数组a,然后输出字符串b,所以结果为B选项。

7[单选题] 有以下程序

b25fe7dd5dbb40997e9475d62abbaf4c.png

程序运行后的输出结果是

A.abcdeB.ABCDEC.edcbaD.EDCBA

参考答案:B

参考解析:本题考查数组名作为函数参数,执行f函数时,传进去的a指针被重新指向了b,所以原本a数组的地址内容不变,所以输出结果为ABCDE,答案为8选项。

8[单选题] 有以下程序:

fb94c0fc5dc84d9b569b467a87887690.png

12b30c7e4e96f2de8d7f94f366985af5.png

程序运行后的输出结果是( )。

A.1,2,3,0,0,0,0,0,0,0,B.1,2,3,1,2,3,0,0,0,0,C.123,0,0,0,0,123,0,0,0,0,D.1,2,3,0,0,1,2,3,0,0,参考答案:D我的答案:未作答收起解析收藏纠错

参考解析:本题考查文件操作函数,两次fwrite后,币文件中已经写入l,2,3,O,0,l,2,3,0,0然后将文件币中的内容重新写人数组a中,最后输出a为1。2,3,0,0,1,2,3,0,0,所以选项D正确。

9[单选题] 有三个关系R、S和T如下:

7a946ac4b1892de2bb83b118c403a091.png

则由关系R和S得到关系T的操作是( )。

A.自然连接B.交C.除D.并

参考答案:C

参考解析:如果S=T/R,则s称为T除以R的商。在除运算中s的域由T中那些不出现在R中的域所组成,对于s中的任一有序组,由它与关系R中每个有序组所构成的有序组均出现在关系T中。所以本题选择C。

10[填空题]下列给定程序中,函数fun的功能是:从形参SS所指字符串数组中,删除所有串长超过k的字符串,函数 返回剩余字符串的个数。ss所指字符串数组中共有N个字符串,且串长小于M。

请在程序的下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANKl.C中。

不得增行或删行.也不得更改程序的结构!

ff179a54122bf589e2712cc987d51426.png

参考解析:

(1)N

(2)k

(3)ss[i]

【考点分析】

本题考查:for循环语句;ff语句条件表达式;字符串拷贝 函数strcpy的使用。

【解题思路】

填空1:for循环语句作用是遍历字符串数组中的每一个字符串,所以循环变量i的循环条件是i

填空2:题目要求删除串长度小于k的字符串,所以if条件语句的条件表达式是len<=k。。填空3:通过字符串拷贝函数将串长不大于k的字符串另存,并记录个数。

【解题宝典】

字符串拷贝函数strcpy,其格式为:strcpy(字符数组名1,字符数组名2)功能:把字符数组2中的字符串拷贝到字符数组l中。字符串结束标识‘、0’也一同拷贝。字符数名2,也可以是一个字符串常量。这时相当于把一个字符串赋予一个字符数组。

相关推荐:

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值