当前位置:问答库>考研试题

2017年北京联合大学移动商务803软件基础之C程序设计考研题库

  摘要

一、选择题

1. 设有以下语句

执行后,c 的值为( )。

A.9

B.7

C.8

D.6

【答案】A 【解析】后得到8, 异或操作,两个操作数相同得0, 不同得1。a 的最右4位是0001,b

的最右4位是1000, 其佘尾全部是0。

2. 有如下程序:

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

A.4, 5, 2, 4

B.4,4, 2,1

C.5,5,3,3

D.4, 5, 2, 3

【答案】A

【解析】strlen 函数统计字符串长度,遇到

由于字符串有效字符之后有一个

字节数为

正确。

3. 标准库函数统计结束。sizeof 用来获取类型或数据对象之前有效字符有4个,a 数组的长度,也即是一个这种数据类型的变量在内存中所占字节数。也会被放入数组,char 类型占一个字节,所以数组a 所占为指向字符串的指针,字符串长度为2, 指针类型变量所占字节数为4。故A 项的功能是( )。

A. 从文件f 中读取长度不超过n-1的字符串存入指针S 所指的内存

B. 从文件f 中读取长度为n 的字符串存入指针s 所指的内存

C. 从文件f 中读取n 个字符串存入指针s 所指的内存

D. 从文件f 中读取n-1个字符串存入指针s 所指的内存

【答案】A

【解析】fgets 函数功能是从f 所指文件中读入

端自动加一个结束标志个字符放入s 为起始地址的空间内,并在尾个字同时将读/写位置指针向前移动字符串长度个字节。在读出

符之前,如遇到了换行符或EOF , 则读出结束,A 项正确。B 项中“读取长度为n ”错误。C 项与D 项中“读取个字符串”错误,读取的是n-1个字符。

4. 以下不属于C 语言位运算符的是( )。

A.! B. C.

D. 〜

【答案】A

【解析】c 语言常用的位运算符有:”按位求反,“<<”左移,“>>”右移,按位与

,按位异或,“”按位或。A 项“!”为逻辑运算符“非”。

5. 若有定义inta=l,b=2,c=3;,则执行表达式II (a=b+c)(++b)后a 、b 、c 的值依次为( )。

A.1、2、3

B.5、3、2

C.5、2、3

D.5、3、3

【答案】C

【解析】根据优先级规则,晒边都是括号,则从左至右执行括号中的表达式,将b+c的值赋值给a ,即a 为5, 不为0, 则II 右边的括号不需要再执行。

6. 当没有指定C 语言中函数形参的存储类别时,函数形参的存储类别是( )。

A. 外部(extern )

B. 静态(static )

C. 寄存器(register )

D. 自动(auto )

【答案】D

【解析】auto 变量又称为自动变量,函数定义变量时,如果没有指定存储类别,系统就认为所定义的变量具 有自动类别,D 选项正确。static 变量又称为静态变量,编译时为其分配的内存在静态存储区中。register 变量又 称为寄存器变量,变量的值保留在CPU 的寄存器中,而不是像一般变量那样占内存单元。当定义一个函数时, 若在函数返回值的类型前加上说明符extern 时,称此函数为外部函数,外部函数在整个源程序中都有效。

7. 有以下程序:

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

A.11

B.21

C.6

D.120

【答案】B

【解析】在整个程序运行期间,静态局部变量在内存的静态存储区中占据着永久性的存储单元,其生存周期 一直延续至整个程序结束。fim 函数被调用了 5次,第1次

第2次,第3次,第4次,

第5次,

8. 以下关于算法的叙述中错误的是( )

A. 算法可以用伪代码、流程图等多种形式来描述

B. —个正确的算法必须有输入

C. 一个正确的算法必须有输出

D. 用流程图可以描述的算法可以用任何一种计算机高级语言编写成程序代码

【答案】B

【解析】一个正确的算法可以有零个或者多个输入,必须有一个或者多个输出。

9. 有以下程序

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

A.25

B.20

C.45

D.36

【答案】A