2016年浙江海洋学院海洋科学C语言(同等学力加试)考研复试题库
● 摘要
一、选择题
1. 下列叙述中正确的是( )。
A. 每个C 程序文件中都必须要有一个main 函数 B. 在C 程序中main 函数的位置是固定的 C.C 程序中所有函数之间都可以相互调用 D. 在C 程序的函数中不能定义另一个函数 答:D
【解析】D 项正确,C 语言语法规定,在函数中不能定义其他函数。A 项错误,C 程序必须要有一个main 函数,但并不是每个文件中都要有;B 项错误,main 函数的位置没有特殊要求;C 项错误,从其他函数中不能调用main 函数。
2. 有以下程序:
程序的运行结果是( )。 A.nice B.verynice C.nicegood D.verygood 答:D
【解析】通过赋值运算使一个字符指针指向一个字符串常量:
这种形式
只是将字符串“nice”首地址赋给指针,而不是将指针原本指向的单元元素改变成“nice”。程序执行过程为:定义字符数 组并且初始化为“verygood”常量,定义指针ps 使其指向数组,使ps 指向数组第5个元素,使指针指向字符串 “nice”,这并不影响s 数组任何元素值,故输出字符串8为“verygood”。
3. 以下叙述中正确的是( )。
A. 分支结构是根据算术表达式的结果来判断流程走向的 B. 在c 语言中,逻辑真值和假值分别对应1和0 C. 对于浮点变量x 和y ,表达式:
是非法的,会出编译错误
第 2 页,共 37 页
D. 关系运算符两边的运算对象可以是C 语言中任意合法的表达式
答:D
【解析】D 项正确,关系运算实际上是“比较运算”,即进行两个数的比较,判断比较的结果是否符合指定的条件,两边的对象可以是任意表达式,如果类型不一致,会发生默认类型转换。A 项错误,分支结构根据逻辑判断的结果来决定程序的流程;B 项错误,逻辑假值对应0, 逻辑真值对应非0; C 项错误,x==y语句合法,编译不会出现错误,但是浮点数的比较一般写成1-7^的形式,e 表示精度。
4. 有以下程序段
程序的输出结果是( )。 A.a=10b=50c=30 B.a=10b=50c=10 C.a=10b=30c=10 D.a=50b=30c=50 答:B
【解析】C 语言中使用;来作为语句的结束,所以a=b, b=c; 是一条语句。if 条件不满足,直接执行c=a。
5. 有以下程序:
程序运行的结果是( )。 A.10, 1 B.20, 1 C.10,2 D.20, 2 答:C
【解析】题目首先定义结构体st 的同时定义结构体数组data ,可
知
结构体指针p 指向数组的首地址,指向
的第二个元素data[l],
然后输出
即输出
则指向数组
所以分别为10和2。
第 3 页,共 37 页
6. 有以下程序:
以下关于程序执行情况的叙述中,正确的是( )。 A.for 循环语句固定执行8次
B. 当产生的随机数n 为4时结束循环操作 C. 当产生的随机数n 为1和2时不做任何操作 D. 当产生的随机数n 为0时结束程序运行 答:D
【解析】rand 〇函数是随机数函数,
返巨结果进行模5操作,得圉_
之间的随机整数,
是把随机数
之间的随机整数。case 语句标号后的语句可以省略不写,省略后,
它与下一条case 合成一条‘或’判定语句。①产生1,3时,输出n ,并跳出switch , 此时并没有跳出for 循环;②产生2, 4时,继续执行for 循环;③产生0时,结束程序,所以for 循环未必执行8次。
7. 若有定义:inta=0,b=0,c=0,d=0; ,以下关于C 语言表达式:顺序的叙述正确的是( )。
A. 先执行++a,表达式++a的值为1; 再执行++b,表达式++b的值为1,由此可确定为1,因此执行++C
B. 先执行++a, 表达式++a的值为1, 由此可确定值为1, 因此执行++C
D. 先执行++a, ++b,++c,++d,使得a , b , c ,d 的值都为1, 由此可确定此执行++C
答:B
【解析】++a表示先将变量a+1, 再执行其他操作,逻辑或运算符遵循“短路求值”策略,即只有在仅靠左操作数的值无法确定该逻辑表达式的结果时,才会求解右操作数,表达式
中,左操作数++a的值为1,已经可以确定整个逻辑表达式的结果为1,因此右操作数++b不再求解,直接执行表达式2, 即++C,B 项正确。
第 4 页,共 37 页
执行值
|值为1, 因此执行++c
_'
值为1,因
C. 先执行++b, 表达式++b的值为1; 再执行++a, 表达式++a的值为1,由此可确定’
相关内容
相关标签