2017年江西师范大学软件学院868C语言程序设计[专业硕士]考研导师圈点必考题汇编
● 摘要
一、选择题
1. 设有以下程序段:inty :
y=rand( )%30+1;
则变量y 的取值范围是( )。
A.0≤y ≤30
B.0 C.l D.l 【答案】B 【解析】本题考点为“%”求余符号。rand ( )产生随机整数,任何整数对30求余得到的整数范围为0〜29,则y 的取值范围为或者说故B 选项正确。 2. 以下选项中,当x 为大于1的奇数时,值为0的表达式是( )。 【答案】D 【解析】x 为大于1的奇数, 3. 以下叙述错误的是( )。 算法 B. 同一程序各模块可由不同人员同时进行编写调试,可提高编写程序的效率 C. 模块化的程序设计是采用自顶向下、逐步细化的原则 D. 程序的每个模块都可通过三种基本结构实现 【答案】A 【解析】结构化程序设计把一个复杂问题的求解过程分阶段进行,需要保证自顶向下、逐步细化、模块化设计、结构化编码。进行模块化设计时,首先设计框架,并定义和调试好各个模块之间的输入输出关系,然后完成 各个模块的编写调试后再集中编译,模块化的程序设计采用自顶向下、逐步细化的原则,A 选项叙述错误,C 选 项叙述正确。各个模块可以由不同人员同时进行编写调试,提高编写程序的效率,B 选项叙述正确。结构化程序 主要由3种基本控制结构组成,顺序结构、选择结构、循环结构,这三种基本结构可以解决任何复杂的问题,D 选项叙述正确。 第 2 页,共 36 页 的值为1,^为假。 A. 在进行模块化程序设计的时候,应首先完成每个模块的编写调试,再集中考虑主程序中的 故选择A 选项。 4. 若函数中有定义语句intk ;,则( )。 A. 系统将自动给k 赋初值0 B. 这时k 中的值无定义 C. 系统将自动给k 赋初值-1 D. 这时k 中无任何值 【答案】B 【解析】intk ;这条语句是定义一个整型变量k ,这是动态定义,编译程序仅为k 开辟存储单元,而没有在存储单元中存放任何初值,此时变量中的值时无意义的。若是静态定义,则会自动初始化,其默认值为0。 5. 有以下程序: 程序运行后的输出结果是( )。 A.10 B.9 C.8 D.7 【答案】B 【解析】 主函数中语句 代 入 即为计算 6. 以下叙述中错误的是( )。 A.C 程序必须由一个或一个以上的函数组成 B. 函数调用可以作为一个独立的语句存在 C. 若函数有返回值,必须通过return 语句返回 D. 函数可以通过实际参数和形式参数之间进行数据传递 【答案】C 第 3 页,共 36 页 用函数的返回值作为参数, 所以首先计算代 入得6, 所 以值为9。 得值为3, 然后计 算 【解析】C 项错误,比如main 函数中有则可以通过exit 函数返回状态。A 项正确,C 程序至少有一个main 函数;B 项正确,C 语言中的函数可以仅进行某些操作而不返回函数值,这时函数的调用可作为一条 独立的语句;D 项正确,当函数调用为传引用时,形参指针和实参指针指向同一块内存,修改形参的同时也就修 改了实参。 7. 有以下程序: 程序运行后的输出结果是( )。 【答案】A 【解析】main 函数中,首先定义两个结构体stn 类型的变量a , b , 把a 成员信息复制给b 成员 ,在f ( )函数中,利用指针重新对b 成员信息进行赋值,分别后,再调用函数f ( ) 输出a , b 成员信息。 8. 以下可以将任意一个两位整数n 的个位数与十位数对换的表达式为( )。 【答案】A 【解析】A 项得到十位数字,得到个位数字,将个位数乘以10加上十位数字 , 实现两位整数个位数与十位实现将任意一个两位整数个位数与十位数对换,A 项正确。B 项得到个位数字, 为十位数字, 第 4 页,共 36 页