2017年沈阳师范大学教育技术学院633C语言程序设计(含网络基础知识)考研强化模拟题
● 摘要
一、选择题
1. 有以下程序:
程序的输出结果是( )。
A.22
B.18
C.20
D.16
【答案】D
【解析】语
句相当
于程序执行过程为
退出循环。
2. 以下叙述中正确的是( )。
A.break 语句只能用于switch 语句体中
B.continue 语句的作用是使程序的执行流程跳出包含它的所有循环
C. 在循环体内使用break 语句和continue 语句的作用相同
D.break 语句只能用在循环体内和switch 语句体内
【答案】D
3. 有如下程序:
若要从键盘读入姓名给结构体变量zhangsan 的name 成员,输入项错误的是( )。
第 2 页,共 54 页 :
【答案】A
【解析】可用以下3种形式来引用结构体变量中的成员:①结构体变量名. 成员名;②指针变量名成员名;③(*指针变量名). 成员名。程序定义了一个结构体变量zhangsan , —个结构体指针ptr , 并且使指针指向变量zhangsan 。A 项zhangsan 为结构体变量名,不能用一〉引用其成员,A
项错误。
4. 阅读以下程序:
该程序编泽时产牛错误,其出错原因是( )。
A. 定义语句出错,case 是关键字,不能用作用户自定义标识符
B. 定义语句出错,printf 不能用作用户自定义标识符
C. 定义语句无错,scarlf 不能作为输入函数使用
D. 定义语句无错,printf 不能输出case 的值
【答案】A
【解析】C 语言中,关键字又称保留字,它是系统预先定义的、具有特定含义的标识符,不能用作用户自定义的标识符在程序中使用。
5. 已知字母A 的ASCII 码值为65,若变量kk 为char 型,以下不能正确判断出kk 中的值为大写字母的表达式是( )
A.
B.
C.
D.
【答案】B
B 项,【解析】表达式等价为无法判断kk 中的值是否为大写字母,逻辑错误。
大写字母的ASCII 码值是65〜90, 小写字母的ASCII 码值是97〜122,isalpha (kk )是判断kk 是否是字母的函数,是字母并且字母ASCII 值小于91的一定为大写字母。
6. 以下叙述中正确的是( )。
A.
语句
B.
语句是合法的 是不合法的,遗漏了数组的大小
第 3 页,共 54 页
均是正确的引用结构体变量成员的方式。
C.
语句
D. 语句
符
【答案】A 是合法的,定义了一个包含两个字符的数组 是合法的,因为数组有三个字符空间的容量,可以保存两个字
【解析】A 项正确,表示定义了长度为8的int 型数组,它里面的每个元素都是0。当所赋初值少于所定义数组的元素个数时,将自动给后面的元素补以初值0。B 项错误,C 语言规定可以通过赋初值来定义数组的大小,这时数组说明符的一对方括号中可以不指定数组的大小;C 项错误,a 是char 类型的数组,里面的元素应该是字符而非字符串,应该用单引号括起来;D 项错误,数组变量一旦定义,其地址值不可改变,不能给数组名重新赋值。
7. 以下叙述错误的是( )。
A. 在进行模块化程序设计的时候,应首先完成每个模块的编写调试,再集中考虑主程序中的算法
B. 同一程序各模块可由不同人员同时进行编写调试,可提高编写程序的效率
C. 模块化的程序设计是采用自顶向下、逐步细化的原则
D. 程序的每个模块都可通过三种基本结构实现
【答案】A
【解析】结构化程序设计把一个复杂问题的求解过程分阶段进行,需要保证自顶向下、逐步细化、模块化设计、结构化编码。进行模块化设计时,首先设计框架,并定义和调试好各个模块之间的输入输出关系,然后完成 各个模块的编写调试后再集中编译,模块化的程序设计采用自顶向下、逐步细化的原则,A 选项叙述错误,C 选 项叙述正确。各个模块可以由不同人员同时进行编写调试,提高编写程序的效率,B 选项叙述正确。结构化程序 主要由3种基本控制结构组成,顺序结构、选择结构、循环结构,这三种基本结构可以解决任何复杂的问题,D 选项叙述正确。故选择A 选项。
8. 关于“while (条件表达式)循环体”,以下叙述正确的是( )。
A. 循环体的执行次数总是比条件表达式的执行次数多一次
B. 条件表达式的执行次数总是比循环体的执行次数多一次
C. 条件表达式的执行次数与循环体的执行次数一样
D. 条件表达式的执行次数与循环体的执行次数无关
【答案】D
【解析】一般来说,while 循环是先判断条件,满足条件后执行循环体,执行完后接着判断条件,执行,直到最后一次判断条件后不成立,跳出循环,所以最后一次执行了条件表达式,但是没有执行循环体。
但是while 循环体中有break 时,条件表达式的执行次数与循环体的执行次数一样。比如:
第 4 页,共 54 页
相关内容
相关标签