2017年电子科技大学程序设计(C语言)复试仿真模拟三套题
● 摘要
一、选择题
1. 有以下程序:
程序的运行结果是( )。
A.7, 4, 2
B.8, 7, 5, 2
C.9, 7, 6,4
D.8,5, 4,2
【答案】D
【解析】题目中的for 循环等价于:
第一次循环,x=8, for 循环条件为真,8%3=2, 不等于0, 则if 条件表达式为真,执行第一个输出语句,先输出x 的值8, 然后将x 的值减1, 此时x=7。然后执行continue 语句结束本次循环,执行x--表达式,得x=6
第二次循环,x=6, for 循环条件为真,6%3=0, 则if 条件表达式为假,执行第二个输出语句,先将x 的值减1得x=5, 然后输出x 的值5, 执行x —表达式,得x=4。
第三次循环,x=4, for 循环条件为真,4%3=1,不等于0, 则if 条件表达式为真,执行第一个输出语句,先输出x 的值4,然后将x 的值减1,此时x=3,然后执行continue 语句结束本次循环,执行x —表达式,得x=2。
第四次循环,x=2, for 循环条件为真,2%3=2, 不等于0, 则if 条件表达式为真,执行第一个输出语句,先输出x 的值2, 然后将x 的值减1,此时x=l, 执行X-表达式,得x=0, for 循环条件为假,循环结束。
2. 有以下程序
程序的运行结果是( )。
A.233423
B.432543
C.233445
D.453523
【答案】D
【解析】第一次循环i 值为3, j 值分别为1和2, 所以输出为4和5; 第二次循环i 值为2, j 值分别为1和2, 所以输出为3和4; 第三次循环i 值为1,j 值分别为1和2,所以输出为2和3。
3. 设有定义:
以下语句中执行效果与其他三个不同的是( )。 A. B. C. D.
【答案】A
【解析】执行if 语句时,首先计算紧跟在if 后面一对圆括号中的表达式的值。如果表达式的值为非零(“真”),则执行其后的if 子句,然后去执行if 语句后的下一条语句;如果表达式的
A 项中if 子句只有c=a, BCD ,值为零(“假”)则跳过if 子句,直接执行if 语句后的下一条语句。
三项中if 子句包括c=a; a=b; b=c;
4. 有如下程序:
程序运行后的输出结果是( )。 A.
B.VWXYZ
C.ZYXWV
D. ‘ABCDE'
【答案】C
【解析】putchar 表示输出单个字符,丨
再转化成字符型
表示输出’z' 转换成ASCII 码后减去i 后
数输出,在for 循环中,i=0,1,2,3,4时,执行循环体,putchar 输出ZYXWV 。
5. 表达式的值是( )。
【答案】B
【解析】需要注意的是,两个整数相除仍然得到整数,
小数部分被省略,
6. 设有一个的矩阵已经存放在一个M 行N 列的数组x 中,且有以下程序段:sum=0;
以上程序段计算的是( )。
A. 矩阵两条对角线元素之和
B. 矩阵所有不靠边元素之和
C. 矩阵所有元素之和
D. 矩阵所有靠边元素之和
【答案】D
【解析】程序执行过程为:第一个for 循环实现对第一列和第N 列求和。第二个for 循环在上一个for 循环结果上实现对第一行和第M 行从第二个元素到第N-1个元素的求和,总体来说,就是矩阵所有靠边元素之和,故D 选项正确。
7. 有如下程序:
程序运行后的输出结果是( )。
A.56,57,
B.57,58,
C.57,57,
D.55,57,