2017年C程序设计考研真题答案及解析
考研真题,是用来研究考试规律的。考生可通过真题,来确定自己的复习范围,来研究考试的重点、难点是哪些内容。希赛网为大家整理2017年C程序设计考研真题答案及解析,供大家参考!
本文提供2017年C程序设计考研真题答案及解析,以下为具体内容
1、为表示关系x>=y>=z,应使用的C语言表达式是( )。
A、(x>=y)&(y>=z)
B、(x>=y)AND(y>=z)
C、(x>=y)&&(y>=z)
D、(x>=y>=z)
2、可在C程序中用作用户标识符的一组标识符是( )。
A、void define WORD
B、as_b3 123 If
C、For Gabc case
D、_2c DO SIG
3、下列表达式中,错误的是( )。
A、2>1?a:b
B、i+++j
C、x*=y+8
D、4.0%2.0
4、当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是( )。
A、c=b=a;
B、(a=c)||(b=c);
C、(a=c)&&(b=c);
D、a=c=b;
5、下列运算符优先级最高的( )。
A、=
B、+
C、!
D、&&
6、若有以下定义:char a;int b;float c;double d;则表达式a*b+d-c值的类型为( )。
A、float
B、int
C、char
D、double
7、以下程序的输出结果是( )。main(){int i,sum;for(i=1;i<6;i++) sum+=i;printf("%d\n",sum);}
A、15
B、14
C、不确定
D、21
8、在C语言中,合法的长整型常数是( )。
A、0L
B、4962710
C、324562&
D、216D
9、若int类型占两个字节,则程序int a=-1;printf("%u,%d\n",a,a);输出为( )。
A、-1.-1
B、-1,65536
C、-1,32768
D、-1,65535
1、试题答案:C
试题解析:
表达同时关系,应选择逻辑与运算符"&&",则有(x>=y)&&(y>=z);故本题选C。选项A中,运算符&表示按位运算,不符题意。选项B中,C语言无AND运算符,不符题意。
2、试题答案:D
试题解析:
选项A中,void是关键字:声明函数无返回值或无参数,声明无类型指针,不是合法的标识符,故不符题意。选项B中,123的第一个字符为数字,不是合法的标识符,故不符题意。选项C中,case是关键字:开关语句分支,不是合法的标识符,故不符题意。选项D中,符合标识符命名规则,符合题意。综上本题选D。
3、试题答案:D
试题解析:
'%'运算符要求参加运算的运算对象(即操作数)为整数,结果也是整数。故选项D错误,本题选D。
4、试题答案:C
试题解析:
将c的值赋给变量a、b,那么c应该在赋值运算符的右侧,故选项A、D错误。由于c的值不为0,则表达式a=c为真,故(a=c)||(b=c);出现短路评估(现象),不执行表达式(b=c),故不符题意,选项B错误。综上本题选C。
如果 &&(||) 运算符左侧的子表达式为 false(true),则不会检查右侧的表达式。因为只要有一个子表达式为 false(true),则整个表达式都为 false(true),所以再检查剩余的表达式会浪费 CPU 时间。这被称为短路评估。
5、试题答案:C
试题解析:
题中运算符优先级从高到低依次为!、+、&&、=;故本题选C。
运算符优先级如下(从高到低):
6、试题答案:D
试题解析:
参与运算的变量的类型不同时,先转换成同一类型,然后进行运算。类型自动转换的基本原则是“按数据长度增加的方向进行转换”,以保证精度不降低。数据类型char、int、float、double的数据长度分别为1、4、4、8;故表达式a*b+d-c值的类型为double型,本题选D。
7、试题答案:C
试题解析:
int型变量sum未赋值,直接使用其值(值无法确定),故程序的输出结果不确定,本题选C。
8、试题答案:A
试题解析:
整型数据的后面添加格式字符l或L表示为长整型数据。故本题选A。
9、试题答案:D
试题解析:
int类型占两个字节,则计算机存储中,变量a存储-1的补码形式为:1111 1111 1111 1111,则对应的无符号整数为216-1即65535。%u表示按无符号整数格式输出,%d表示按有符号整数格式输出;故输出结果为-1,65535,即本题选D。
点击查看【完整】试卷>>