C语言程序设计

若有语句int*p,a=4;和p=&a;下面均代表变量值的一组选项是()A、a,p,*&aB、&*a,&a,*pC、*&p,*p,&aD、*&a,*p,a

题目

若有语句int*p,a=4;和p=&a;下面均代表变量值的一组选项是()

  • A、a,p,*&a
  • B、&*a,&a,*p
  • C、*&p,*p,&a
  • D、*&a,*p,a
参考答案和解析
正确答案:D
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若有定义语句: int a[4][10],*p,*q[4]; 且 0 ≤ i<4 ,则错误的赋值是

A)p=a

B)q[i]=a[i]

C)p=a[i]

D)p=&a[2][1]


正确答案:A

第2题:

若有定义语句:"int a[4][10],*P,*q[4];"且0≤i<4,则错误的赋值是( )。A.D=aB.q[i]=a[i]C.p=a[l]D.

若有定义语句:"int a[4][10],*P,*q[4];"且0≤i<4,则错误的赋值是( )。

A.D=a

B.q[i]=a[i]

C.p=a[l]

D.P=&a[2][1]


正确答案:A
数组名是一个存放一个数组首地址的值,是一个地址常量。而p=a不是合法的,因为p和a的基本类型不同。

第3题:

若有语句int *p, a=10 p=&a 下面均代表地址的一组选项是()。

A.a, p, *&a

B.&*a, &a, *p

C.*&p, *p,&a

D.&a, &*p, p


答案:D

第4题:

有定义语句:int*p[4],以下选项中与此语句等价的是( )。

A.int p[4];

B.int**p;

C.int*(p[4]);

D.int(*p)[4];


正确答案:C

第5题:

若有语句:int a=4, *p=&a;,下面均代表地址的一组选项是( )。

A.a, p, &*a

B.*&a, &a, *p

C.&a, p, &*p

D.*&p, *p, &a"


参考答案C

第6题:

若有以下说明和语句 int c[4)[5],(*p)[5]; p=c; 能够正确引用c数组元素的是

A.p+1

B.*(p+3)

C.*(P+1)+3

D.*(p[0]+2)


正确答案:D
解析:本题中定义了一个二维数组c和一个指针数组p并初始化让它指向 c,显然此时p中的各元素为地址,选项A中p+1,此时其中的1代表的长度是整个二维数组c的长度,故p+1将让p指向c数组后面的元素,故不能引用c数组中的成员,选项D中p[0]指的是指针数组中的第一个元素的地址即c的首地址,此时的1的长度代表的是数组C中一行的长度,故p[0]+2代表的是第三行的首地址,而*(p[o]+2)将代表第三行的第一个元素的地址。

第7题:

若有一些定义和语句 include int a=4,b=3,*p,*q,*w; p=&a; q=&b; w=q; q

若有一些定义和语句 #include <stdio.h> int a=4,b=3,*p,*q,*w; p=&a; q=&b; w=q; q=NULL; 则以下选项中错误的语句是

A.*q=0;

B.w=p;

C.*p=va;

D.*p=*w;


正确答案:A
解析:给一指针赋空值的正确语句是q=NULL;或q='\0';或q=0;。选项B)的含义为使指针p指向指针q所指向的存储单元。选项C)的含义为使指针P指向变量a所在的存储单元。选项D)的含义为把指针a赋给指针p。

第8题:

若有语句int*p=newint[5];int*pi;则以下语句中,执行时会造成delete[]p语句的执行出错的是()。

A、(*p)++;

B、p++;

C、pi=p;

D、pi=p+3;


参考答案:B

第9题:

若有以下定义和语句; int a[]={1,2,3,4,5,6,7,8,9,10},*p=a;

A.p+=2,*(p++)

B.p+=2,*++p

C.p+=3,*p++

D.p+=2,++*p


正确答案:A
解析:引用一个数组元素,可以用:(1)下标法,如a[i]形式;(2)指针法,如*(a+i)或*(p+i)。数组的下标从0开始,值为3的数组元素是a[2]。B、C的内容为a[3],D将a[2]前自加,结果为4。

第10题:

若有语句int *point,a=4;和 point=&a;,下面均代表地址的一组选项是A.a,point,*&a B.&am

若有语句int *point,a=4;和 point=&a;,下面均代表地址的一组选项是A.a,point,*&a B.&*a,&a,*point C.*&point,*point,&a D.&a,&*point,point


正确答案:D
本题主要考查指针变量对数值的引用。在题目中,首先定义了整型指针变量point和一个整型变量a,变量a的初值为4,然后是指针变量指向a,或者说将变量a所在存储单元的地址值赋给指针变量。
在选项A中,很显然,不全是地址,只有point表示地址,而*&a等价于*(&a),表示取一个数值。
在选项B中,也不都表示地址,其中*point表示数值,其他两个表示地址。
在选项C中,与选项B类似,其中的*point表示数值。
在选项D中,都表示地址,是题目的选择答案。

更多相关问题