若有定义语句:char s[3][10],(*k)[3],*p; 则以下赋值语句正确的是(  )。

题目
单选题
若有定义语句:char s[3][10],(*k)[3],*p; 则以下赋值语句正确的是(  )。
A

p=s;

B

p=k;

C

p=s[0];

D

k=s;

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若有定义语句: char s[10]= " 1234567\0\0 " ; ,则 strlen(s) 的值是

A)7

B)8

C)9

D)10


正确答案:A

第2题:

若有定义语句: 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

第3题:

若有定义语句: int k[2][3],*pk[3]; , 则以下语句中正确的是

A ) pk=k;

B ) pk[0]=&k[1][2];

C ) pk=k[0];

D ) pk[1]=k;


正确答案:B
答案 B
解析 : *pk[3] 表示的是一个共有 3 个元素的一维指针数组 。 pk[0]=&k=[1] [2] 表示把二维数组中下标为k[1][2]的值赋予 pk[0], 也就是 pk[0] 指向 k[1][2] 这个元素。

第4题:

若有char a[5],*pa;则下面的选项中正确的赋值语句是()。

A.p“abcd”

B.a“abcd”

C.*p“abcd”

D.*a“abcd”


正确答案:A

第5题:

以下语句或语句组中,能正确进行字符串赋值的是( )。

A.char*sp;*sp="right!";

B.char s[10];s="right!";

C.char s[10];*s="right!";

D.char*sp="right!";


正确答案:D
解析:本题的考点是C语言的数组和指针。C的数组名是一个特殊类型的指针,固定指向数组第一个元素的位置,运行过程中不能再改变其指向。因此选项B、C都是错误的。指针可以指向任何单元,但选项A是错误的,因为赋值语句“*sp=”right!”;”是错误的,正确写法是“sp=”right!”;”。而对于选项D,由于“char*sp="right!";”是定义指针同时赋初值,因此是正确的。

第6题:

若有如下定义,则以下哪个是对数组元素的正确的引用。inta[10],*p;p=a;A、*则以下选项中,正确的赋值语句是()

A、*p=8;

B、*q=5;

C、q=p;

D、p=1;


参考答案:A

第7题:

若有定义语句:int k[2][3],*pk[3];,则以下语句中正确的是______。

A.pk=k;

B.pk[0]=&k[1][2];

C.pk=k[0];

D.pk[1]=k;


正确答案:B
解析:*pk[3]:由于[]比 * 优先级高,因此p先与[3]结合,形成p[3]数组,有3个元素。然后再与p前面的“*”结合,“*”表示此数组是指针类型的,每个数组元素(相当于—个指针变量)都可以指向—个整型变量。

第8题:

若有定义语句: int a[2][3],*p[3]; ,则以下语句中正确的是A ) p=a;B)p[0]=a; C) p[0]=&am

若有定义语句: int a[2][3],*p[3]; ,则以下语句中正确的是

A ) p=a;

B)p[0]=a;

C) p[0]=&a[1][2];

D)p[1]=&a;


正确答案:C

                                           

第9题:

若有定义语句:int a[2][3],*p[3];,则以下语句中正确的是( )。

A.p=a;

B.p[0]=a;

C.p[0]=&a[1][2];

D.p[1]=&a;


正确答案:C
解析:选项A中,p为数组名,其值是不能被改变的,故非法;选项B中,p[0]的类型是int*,而a是二维数组名(类型为int[][3]),两者无法赋值,故非法:选项C中,p[0]为int型指针,&a[1][2]是int型变量的地址,可以合法赋值;选项D中,p[1]是int型指针,而&a是二维数组的地址(类型为int(*)[2][3]),两者无法赋值,故非法。所以本题应该选择C。

第10题:

以下语句或语句组中能正确进行字符串赋值的是( )。

A.ehar以*sp; * sp = "right!";

B.char s[10] ;s = "right!";

C.char s [10]; * s = "right !";

D.char * sp = "right !";


正确答案:D
解析:选项A)应将*sp="right!";中的*叩改为sP,即把字符串"right!”的首地址赋给指针变量sp;选项B)中的s代表数组的首地址,不能给它赋字符串,只能在定义数组时,对其进行初始化;选项C)中的。s指的是数组的第一个元素,不能给它赋字符串。

更多相关问题