一、选择题
1. 有以下函数:
该函数的功能是( )。 A. 计算字符串的长度 B. 实现字符串的赋值 C. 将字符串逆序存放 D. 计算字符串所占字节数 【答案】A
【解析】在fim ( )函数中定义了字符指针P , 首先把形参字符ps (相当于字符串的首地址)赋值给指针P , 再通过while 循环移动p 指针,当p 指针指向单元为0时,退出while 循环,返回此时p 地址和ps 地址差值,即 字符串的长度。
2. 以下叙述中错误的是( )。
A. 书写风格良好的程序执行效率尚 B. 书写风格良好的程序易读性好 C.C 程序可以在一行上写多条语句 D.C 程序允许将一条语句分写在多行上 【答案】A
【解析】书写风格与程序执行效率无关,程序执行效率与程序的数据结构有关,由算法的时间复杂度和空间复杂度决定,但书写风格会深刻地影响软件的质量和可维护性,良好的程序设计风格可以使程序结构清晰合理。C 语言程序书写规范中,良好的书写习惯中一般一行写一条语句,这样方便阅读,但是将一行写多条语句或者将一条语句分写在多行上是符合C 程序编写规则的。
3. 有如下程序:
程序运行后的输出结果是( )。 A.12 B.14 C.20 D.13
【答案】C
【解析】整型常量中,十进制整常量没有前缀,输出格式控制符为%山八进制整常量以0作为前缀,输出格式控制符为十六进制整常量以0X 或Ox 作为前缀,输出格式控制符为%x 。十六进制数0x13表示成十进制数为19,以十进制格式输出x+l=19+l=20,故C 项正确。
4. 以下选项中,合法的C 语言常量是( )。
【答案】A
【解析】整型常量:用不带小数点的数字表示。实型常量:用带小数点的数字表示。字符型常量:用带有单引号的一个字符表示。字符串常量:用一对双引号括起来的一串字符。A 选项正确。
不合法,若改成
则为字符串常量,B 选项错误。
何类型常量,C 选项错误。2Kb 不合法,若加上双引号
5. 以下针对全局变量的叙述错误的是( )。
A. 全局变量的作用域是从定义位置开始至源文件结束 B. 全局变量是在函数外部任意位置上定义的变量 C. 用extern 说明符可以限制全局变量的作用域 D. 全局变量的生存期贯穿于整个程序的运行期间 【答案】C
【解析】在不同编译单位内用extern 说明符来扩展全局变量的作用域,extern 可以将全局变量作用域扩展到 其他文件,而不是限制全局变量的作用域,答案为C 选项。
6. 设有以下程序段:
为实型常量,不合法,不是任
为字符串常量,故D 选项错误。
则变量y 的取值范围是( )。
【答案】B
【解析】本题考点为
求余符号。rand ( )产生随机整数,任何整数对30求余得到
或者说
故B 选项正确。
的整数范围为0〜29, 则y 的取值范围为
7. 以下叙述中正确的是( )。
A. 分支结构是根据算术表达式的结果来判断流程走向的 B. 在c 语言中,逻辑真值和假值分别对应1和0 C. 对于浮点变量x 和y ,表达式:【答案】D
【解析】D 项正确,关系运算实际上是“比较运算”,即进行两个数的比较,判断比较的结果是否符合指定的条件,两边的对象可以是任意表达式,如果类型不一致,会发生默认类型转换。A 项错误,分支结构根据逻辑判断的结果来决定程序的流程;B 项错误,逻辑假值对应0, 逻辑真值对应非0; C 项错误,x==y语句合法,编译不会出现错误,但是浮点数的比较一般写成1-7^的形式,e 表示精度。
8. 有定义语句:
A. B. C. D.
【答案】D
【解析】采用首地址。A 项,的首地址;D 项
,
9. 一下四个程序中,完全正确的是( )
是非法的,会出编译错误
D. 关系运算符两边的运算对象可以是C 语言中任意合法的表达式
若要从终端给s 输入5个字符,错误的输入语句是( )。
函数输入时,输入项为变量的地址。为数组的首地址;B 项,
不是地址。【程序有错
,
其中输入项为存放字符串的应
为
最后一行应
为
为数组中第二个元素的地址;C 项,s 也为数组