计算机程序设计

若有说明:inti,j=7,*p=&i;则与i=j;等价的语句是()。A、i=*p;B、*p=jC、i=&j;D、i=**p;

题目

若有说明:inti,j=7,*p=&i;则与i=j;等价的语句是()。

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

第1题:

设有定义inti=123;longj=456;下面赋值不正确的语句是()

A.j=i;

B.j=(long)i;

C.i=(int)j;

D.i=j;


参考答案:D

第2题:

若有说明int i,j=2,*p=&i;,则能完成i=j赋值功能的语句是 ( )

A.i=*p;

B.*p=*&j

C.i=&j

D.i=* *p;


正确答案:B

第3题:

若有说明:inti,j=7,*p=,则与i=j;等价的语句是()

A、i=*p;

B、*p=j;

C、i=

D、i=**p;


参考答案:B

第4题:

若有说明int i,j=2,*p=&i;,则能完成i=j赋值功能的语句是______。

A.i=*p

B.*P=*&j

C.i=&j

D.i=**p;


正确答案:B
解析:指针是—种用来存放变量地址的特殊变量。本题中指针变量p用于存放整型变量i的地址,改变*p的值即为改变i的值。又因为“&”和“*”两个运算符的优先级相同,按自右而左的方向结合,所以*&j运算选进行&j运算,得j的地址,再进行*运算,取所得地址里面的值,故*&j与j等价。

第5题:

若有说明int i,j=2, *P=&i;,则能完成i=j赋值功能的语句是_______。

A.i=*p;

B.*P2=*&j;

C.i=&j;

D.i=**p;


正确答案:B
解析:指针是一种用来存放变量地址的特殊变量。本题中指针变量p用于存放整型变量i的地址,改变*p的值即为改变i的值。又因为“&”和“*”两个运算符的优先级别相同,按自右而左的方向结合,所以*&j先进行&j运算,得j的地址,再进行*运算,取所得地址里面的值,故*&j与j等价。

第6题:

若有说明int m[3][4]={3,9,7,8.5},(*q)[4];和赋值语句q=m;,则对数组元素m[i][j](其中O<=i<3,0<=j<4)值的正确引用为( )。

A)(q i)[j]

B)*q[il][j]

C)*(*q[i] j)

D)*(*(q i) j)


正确答案:D
(q i)指向第i行首地址, (*(q i) j)代表第i行第i个元素。

第7题:

有如下程序段,其中会产生编译错误的语句是 inti=0,j=1; int &r=i; //① r=j; //② int * p=&i; //③ * p=&r; //④

A.④

B.③

C.②

D.①


正确答案:A
解析:赋值运算符不能将int地址(指针)赋值给int变量。 

第8题:

若有说明.inti,j=2,*p=,则能完成i=j赋值功能的语句是()。

A、i=*p;

B、*p=*

C、i=

D、i=**p;


参考答案:B

第9题:

若有说明int i,j=2,*p=&i;,则能完成i=j赋值功能的语句是______。A.i=*p;B.*p=*&j;C.i=&am

若有说明int i,j=2,*p=&i;,则能完成i=j赋值功能的语句是______。

A.i=*p;

B.*p=*&j;

C.i=&j;

D.i=**p;


正确答案:B
解析:指针是一种用来存放变量地址的特殊变量。本题中指针变量p用于存放整型变量i的地址,改变*p的值即为改变i的值。又因为“&”和“*”两个运算符的优先级别相同,按自右而左的方向结合,所以*&j先进行&j运算,得j的地址,再进行*迄算,取所得地址里面的值,故*&j与j等价。

第10题:

若在以下定义和赋值语句,则才s数组的第i行第j列(假设i,j已正确说明并赋值)元素地址的合法引用为 int s[2][3]={0},( *p)[3]; p=s;

A.*(*(p+i)+j)

B.*(p[i]+j)

C.(p+i)+j

D.(*(p+i))[j]


正确答案:A
解析:p+i是数组s的第i+1行的首地址,而*(p+i)则是数组第i+1行第1列的元素的地址,*(p+i)+j则是第i+1行的第j+1列的地址,*(*(p+i)+j)引用的是数组元素s[i][j]的值。注意:通过建立一个指针数组来引用二维数组元素。

更多相关问题