考研高级程序设计在线题库每日一练(一十八)
以下是希赛网给大家分享考研高级程序设计在线题库每日一练,希望通过刷题可以帮助大家巩固重要知识点,对知识点查漏补缺,祝愿大家能顺利通过考试!
本文提供考研高级程序设计在线题库每日一练,以下为具体内容
1、若有语句int a[4][4],*p,*q[4];,且0<=i<4,则错误的赋值是( )。
A、p=a
B、q[i]=a[i]
C、p=q[i]
D、p=&a[2][1]
2、下列符号中,不是合法转义字符的是( )。
A、'\\'
B、'\018'
C、'\t'
D、'\0'
3、若a=1,b=2,则执行w=(a<b)?a++:b--;语句后的b的值是( )。
A、0
B、1
C、2
D、3
4、若有说明int i,j=2,*p=&i;则能完成i=j赋值功能的语句是( )。
A、i=*p
B、*p=*&j
C、i=&j
D、i=**p
5、以下只有在使用时才为该类型变量分配存储空间的存储类说明是( )。
A、auto和static;
B、register和static;
C、auto和register;
D、extern和register;
1、试题答案:A
试题解析:
【考点】本题考查指针指向二维数组。
【解析】由题中定义inta[4][4],*p,*q[4];,则a是二维数组,p是指向int型的指针,q是一个数组,且每个元素皆指向一个int型。A选项中a代表数组首地址,赋值给p,以行计算二维(错误);B选项中q[i]是一个指针变量,a[i]表示第i行首元素地址(正确);C选项中q[i]是个指向int型指针与p相同(正确);D选项中&a[2][1]是元素的地址(正确)。综上本题选A。
2、试题答案:B
试题解析:
【考点】本题考查转义字符。
【解析】由下表可知'\\'表示一个反斜线(\);'\t'表示水平制表符;'\0'表示空字符。而对于'\018',应为八进制,但是其中有数字8,此转义字符错误。故本题选B。
3、试题答案:C
试题解析:
【考点】本题考查条件表达式。
【解析】语句中a<b成立,则执行表达式a++,故a的值为2;不再执行后面的表达式。故a=2,b=2,本题选C。
条件表达式的一般形式为:表达式1?表达式2:表达式3。它的执行顺序:先求解表达式1;若为真(非0)则求解表达式2,此时表达式2的值就是整个条件表达式的值;若表达式1的值为0(假),则求解表达式3,此时表达式3的值就是整个条件表达式的值。
4、试题答案:B
试题解析:
【考点】本题考查指针的引用。
【解析】由题中定义,*p是i的值,*&j是j的值,&j是j的地址,**p错误。故本题选B。
5、试题答案:C
试题解析:
【考点】本题考查数据的存储。
【解析】由题在使用时才为该类型变量分配存储空间的存储类别应存储在动态存储区域CPU的寄存器中,由下表可知,选项C符合题意,故本题选C。
auto(自动变量)、register(寄存器变量)、static(静态变量)、extern(外部变量,可被其他文件引用)