A) 二进制 B) 八进制 C) 十进制 D) 十六进制 答案:A
详细解答:本题考查了整型常量的三种表示形式
整型常量分为十进制整型常量、八进制整型常量、十六进制整型常量,唯独没有二进制整形常量,所以源程序中不能表示二进制
17) 若有表达式(w)?(--x):(++y),则其中与w等价的表达式是 ( ) A)w==1 B) w==0 C) w! =1 D) w! =0 答案:D
详细解答:本题考查了逻辑表达式的真假
题目中w为1,表达式w表示真,w为0,表达式w表示假,这类题目的做法,把1,0代入选项,找出与w真假条件相符的即可
比如:D选项, w为1时,1!=0成立,表达式值为真w为0时,0!=0部成立,表达式值为假
18) 执行以下程序段后,w的值为 ( ) int w=’A’,x=14,y=15; w=((x||y)&&(w<’a’)); A)-1 B)NULL C) 1 D)0 答案:C
详细解答:本题考查了逻辑表达式的判断
&&两边都为真,表达式才为真;||两边有一个为真就为真.(x||y)值为真,(w<’a’)成立,也为真,整个表达式((x||y)&&(w<’a’))值为1,把1赋值给w, w的值为1
19) 若变量已正确定义为int型,要通过语句scanf(“%d,%d,%d”,&a,&b,&c);给a赋值1,给b赋值2,给c赋值3,以下输入形式中错误的是(ㄩ代表一个空格符)()
A)ㄩㄩㄩ1,2,3<回车> B)1ㄩ2ㄩ3<回车> C) 1,ㄩㄩㄩ2,ㄩㄩㄩ3<回车> D)1,2,3<回车> 答案:B
详细解答:本题考查了scanf输入函数的格式说明知识
输入函数的输入控制(双引号之间的内容),除 %* 外,如果含有其它字符,则在输入数据时一定要一一对应输入这些字符,此题双引号之间含有逗号,那么输入数据之间必须输入逗号,B选项错误.此类型的题目还要注意逗号不是分隔符,如果双引号之间没有逗号,输入数据时不能用逗号 20) 有以下程序段 int a,b,c; a=10;b=50;c=30; if(a>b) a=b,b=c; c=a;
printf(“a=%d b=%d c=%d”,a,b,c); 程序的输出结果是 ( )
A)a=10 b=50 c=10 B)a=10 b=50 c=30 C) a=10 b=30 c=10 D) a=50 b=30 c=50 答案:A
详细解答:本题目学员应该注意逗号表达式语句,及if语句的结构 属于if(a>b)的只有一条语句a=b,b=c;(逗号表达式语句)
咱们强调如果含有多条语句,必须用大括号{ }括起,eg:if(a>b) { a=b,b=c; c=a;} 如果没有用 { }括起,那么只有一条语句,10>50不成立,所以a=b,b=c;不执行;执行后面的语句c=a;此时c的值变为10,所以输出为A选项 21) 若有定义语句:int
m[ ]={5,4,3,2,1},i=4;则下面对m数组元素的引用中错误的是( ) A)m[--i] B)m[2*2] C) m[m[0]] D)m[m[i]] 答案:C
详细解答:本题考查了数组的下标不能越界,数组长度由{ }中的数据个数默认为5,那含有5个数组元素分别为m[0]、m[1]、m[2]、m[3]、m[4],C)选项为m[5],下标越界
A) 选项对应m[3] B) 选项对应m[4] D)选项对应m[1] 22) 下面的函数调用语句中func函数的是实参个数是 ( ) func( f2(v1,v2)), (v3,v4,v5),(v6,max(v7,v8))); A)3 B)4 C) 5 D)8 答案:A
详细解答:函数的参数列表,不同参数之间用逗号隔开, func函数的参数个数为3,分别为f2(v1,v2)),(v3,v4,v5),(v6,max(v7,v8))。大家可以简单的理解为以外层逗号间隔为准,其中每个参数又含有函数和多个参数,超出本题查考的内容
23) 若有定义语句:double x[5]={1.0, 2..0, 3.0, 4.0, 5.0},*p=x; 则错误引用x数组元素的是 ( )
A)*p B)x[5] C)*(p+1) D)*x 答案:B
详细解答:本题考查数组的下标是否越界,以及指针对变量的引用
B)选项x[5],下标越界。一维数组名是地址常量(数组首地址),始终指向第一个数组元素,进行赋值p=x,指针变量p也指向第一个数组元素如下图:
A)选项 *p表示p所指向单元的数据即x[0] 值为1.0 C)选项 *(p+1)表示p+1所指向单元的数据即x[1] 值为2.0 D)选项 *x表示x所指向单元的数据即x[0] 值为1.0
24)若有定义语句: char s[10]=”1234567\\0\\0”; ,则strlen(s)的值是 ( ) A)7 B)8 C) 9 D)10
答案:A
详细解答:本题目考查字符串结束标志’\\0’。字符串从第一个字符开始,遇到第一个结束符’\\0’为止,注意’\\0’不占字符串长度,所以此题选A 25) 以下叙述中错误的是 ( )
A)用户定义的函数中可以没有return 语句
B) 用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值
C) 用户定义的函数中若没有return语句,则应当定义函数为void类型 D)函数的return语句中可以没有表达式 答案:B 详细解答:
1、如果函数返回值类型为void,则可以不用return语句,所以A正确; 2、如果函数没有return语句,函数返回值类型必须是void
3、如果函数没有返回值,可以用return语句,此时表达式应该为空,D正确 4、函数可以根据需要返回一个确定的值,程序中可以出现多个return语句,但当程序执行到第一个return语句时,就会结束当前函数的运行,不会执行后面的语句,所以用return语句只能返回一个函数值,B错误 26) 以下关于宏的叙述中正确的是 ( ) A)宏名必须用大写字母表示
B) 宏定义必须位于源程序中所有语句之前 C) 宏替换没有数据类型限制