刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

单选题

定义int a[5] = {1, 2, 3, 4, 5}, *p = a, *q = p++; 那么*p 和*q 的值分别是(   )。

A

2、3

B

3、2

C

1、2

D

2、1

使用微信搜索喵呜刷题,轻松应对考试!

答案:

D

解析:

【喵呜刷题小喵解析】在C语言中,数组名其实是指向数组第一个元素的指针。所以,`int a[5] = {1, 2, 3, 4, 5};`定义了一个包含5个整数的数组,数组的首地址是数组名`a`。

`*p = a;`这行代码的意思是将数组的首地址赋值给指针`p`,此时`p`指向数组的第一个元素,即数值1。

`*q = p++;`这行代码的意思是先将`p`的当前值(即1)赋值给`q`,然后`p`自增1,指向数组的第二个元素,即数值2。

所以,`*p`的值是2,`*q`的值是1。因此,正确答案是D选项。
创作类型:
原创

本文链接:定义int a[5] = {1, 2, 3, 4, 5}, *p = a, *q = p++; 那么

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share