2026年C_语言指针知识备考题及答案精析.docxVIP

  • 0
  • 0
  • 约6.6千字
  • 约 23页
  • 2026-01-22 发布于福建
  • 举报

2026年C_语言指针知识备考题及答案精析.docx

第PAGE页共NUMPAGES页

2026年C语言指针知识备考题及答案精析

一、选择题(每题2分,共20分)

1.以下关于指针的说法中,正确的是()。

A.指针变量只能指向同一类型的数据

B.指针可以指向任何类型的数据

C.指针变量的值只能是0

D.指针变量的值可以是任何整数

2.若有定义:`inta=5;intp=a;`,则以下表达式中错误的是()。

A.`p=10;`

B.`p=p;`

C.`intq=p;`

D.`p++;`(注意:`p++`是错误的,因为`p`指向的是`int`类型,自增会导致错误)

3.以下代码段执行后,`x`的值为()。

c

intx=10,y=20;

intp1=x,p2=y;

p1=p2;

x=p1;

A.10

B.20

C.30

D.无法确定

4.以下代码段执行后,`str[3]`的值为()。

c

charstr[]=hello;

charp=str;

p+=3;

p=w;

A.w

B.o

C.l

D.h

5.以下代码段中,哪个选项会导致未定义行为()。

c

intp=NULL;

p=10;

A.`p=NULL;`

B.`p=10;`

C.两者都会导致未定义行为

D.两者都不会导致未定义行为

6.以下代码段执行后,`a[1]`的值为()。

c

inta[5]={1,2,3,4,5};

intp=a+2;

p=10;

A.1

B.2

C.10

D.5

7.以下代码段执行后,`s`的值为()。

c

chars=hello;

s[0]=H;

A.Hello

B.hello

C.Helloworld

D.编译错误

8.以下代码段中,`p`的值在执行后为()。

c

intarr[5]={1,2,3,4,5};

intp=arr;

p+=2;

A.arr[2]

B.arr[3]

C.3

D.4

9.以下代码段执行后,`x`的值为()。

c

intx=10,y=20;

intp=y;

x=p;

p=x;

p=30;

A.10

B.20

C.30

D.0

10.以下代码段中,`p`的值在执行后为()。

c

inta[5]={1,2,3,4,5};

intp=a;

p=p+3;

A.a[3]

B.a[4]

C.4

D.5

二、填空题(每空2分,共20分)

1.若有定义:`inta=5;intp=a;`,则`p`的值为______,`p`的值为______。

2.以下代码段执行后,`str[4]`的值为______。

c

charstr[]=world;

charp=str;

p+=4;

p=!;

3.以下代码段执行后,`x`的值为______。

c

intx=10,y=20;

intp1=x,p2=y;

p1=p2;

p1=30;

x=p1;

4.以下代码段执行后,`s`的值为______。

c

chars[]=hello;

charp=s;

p+=2;

p=w;

5.若有定义:`intarr[5]={1,2,3,4,5};`,则`arr[2]`的地址为______,`arr[2]`的值为______。

6.以下代码段执行后,`x`的值为______。

c

intx=10,y=20;

intp=y;

x=p;

p=30;

7.以下代码段执行后,`str[0]`的值为______。

c

charstr[]=abc;

charp=str;

p[1]=d;

8.以下代码段执行后,`x`的值为______。

c

intx=10,y=20;

intp=y;

p=x;

p=30;

x=p;

9.以下代码段执行后,`s`的值为______。

c

chars[]=world;

charp=s;

p+=3;

p=!;

10.若有定义:`inta[5]={1,2,3,4,5};`,则`a`的地址为______,`a[0]`的值为______。

三、简答题(每题5分,共25分)

1.解释指针与数组的关系,并举例说明。

2.解释`NULL`指针的概念及其使用场景。

3.解释指针算术运算的规则,并举例说明。

4.解释`void`指针

文档评论(0)

1亿VIP精品文档

相关文档