考研C语言程序设计在线题库每日一练(二十三)
以下是希赛网给大家分享考研C语言程序设计在线题库每日一练,希望通过刷题可以帮助大家巩固重要知识点,对知识点查漏补缺,祝愿大家能顺利通过考试!
本文提供考研C语言程序设计在线题库每日一练,以下为具体内容
1、设整型变量x为9,使y不为4的表达式为( )。
A、 y=x/2, x%2
B、 y=12-(--x)
C、 y=x>4?4:0
D、 y=x-=x/2
2、若已定义:int a[ ]={0,1,2,3,4,5,6,7,8,9},*p=a, i=3;,则对a数组元素不正确的引用是( )。
A、a[p-a]
B、p[i]
C、*(&a[i])
D、a[p+a]
3、当调用函数时,实参是一个数组名,则向函数传送的是( )。
A、数组的首地址
B、数组的长度
C、数组第一个元素的值
D、整个数组的元素中的值
4、下面程序的运行结果是( )。
A、1
B、12
C、123
D、1234
5、在循环中使用break语句的功能是( )。
A、终止本次循环,继续下次循环
B、跳出包含此break语句的所有循环
C、使程序执行结束
D、使程序的执行跳出break所在的那一重循环
1、试题答案:D
试题解析:
【考点】本题考查运算符和表达式。
【解析】选项A中,表达式y=x/2, x%2可以写成(y=x/2),(x%2),y=9/2=4。选项B中y=12-(--x)可以写成{x=x-1;y=12-x;},y的值为4。选项C中y=x>4?4:0,x>4c成立,故y的值为4。选项D中先运算x-=x/2,即x=x-x/2=9-4=5,则y的值为5。综上使y不为4的表达式为y=x-=x/2,故选D。
2、试题答案:D
试题解析:
选项A中,p-a所得到的结果为它们所指元素(都指向首元素)的相对距离,因此p-a=0。选项B,p[i]等价于a[i]。选项C,*(&a[i])等价于a[i]。选项D中的p+a,两个地址不能相加,无实际意义。故本题选D。
当指针变量指向数组元素时,可以进行一下运算:加一个整数(用+或+=),如p1+1;减一个整数(用-或-=),如p1-1;
自加运算,如p++,++p;
自减运算,如p--,--p;
两个指针相减,如p1-p2(只有p1和p2都指向同一数组的元素时才有意义)。
注意:两个地址不能相加,如p1+p2是无实际意义的。
【考点】本题考查指针与数组。
3、试题答案:A
试题解析:
【考点】本题考查函数参数---数组名做实参。
【解析】用数组元素做实参时,向形参变量传递的是数组元素的值。用数组名做实参时,向形参(数组名或指针变量)传递的是数组首元素的地址。故本题选A。
4、试题答案:C
试题解析:
【考点】本题考查循环结构---while。
【解析】num值为0,执行循环体,输出1;num值为1,执行循环体,输出2;num值为2,执行循环体,输出3;num值为3,结束while循环。综上,运行结果为123,本题选C。
5、试题答案:D
试题解析:
【考点】本题考查循环结构---break语句。
【解析】break使得程序的执行跳出break所在的那一重循环,接着执行本循环下面的语句。故本题选D。

