![](https://static.youtibao.com/asksite/comm/h5/images/m_q_title.png)
指针变量p和数组a的说明如下: int*a[3]={"aa","bb","cc"},**p; 执行语句p=&a[2];后,
![](https://static.youtibao.com/asksite/comm/h5/images/solist_ts.png)
若有说明int(*p)[3]; 则以下正确的描述()。
A.p是一个指针数组
B.p是一个指针,它只能指向一个包含3个int类型元素的数组
C.p是一个指针,它可以指向一个一维数组中的任意元素
D.(*p)[3]与*p[3]等价
A.一个返回值为指针型的函数名
B.一个用于指向整型数据的指针变量
C.一个用于指向函数的指针变量
D.一个用于指向一维数组的行指针
若已定义int a;下面对(1)(2)两个语句的正确解释是()。
(1)int *p=&a;(2)*p=a;
A.语句(1)和(2)中的*p含义相同,都表示给指针变量p赋值
B.(1)和(2)语句的执行结果,都是把变量a的地址赋给指针变量p
C.(1)在对p进行说明的同时进行初始化,使p指向a
(2)将变量a的值赋给指针变量p
D.(1)在对p进行说明的同时进行初始化,使p指向a
(2)将变量a的值赋给*p
A.若int a[4][4]; int *b[]={a[0],a[1],a[2],a[3]};则b是指针数组
B.指针数组每个元素都是指针变量
C.指针数组与指向数组的指针是等价的
D.int *a[4];
E.int (*a)[4];
输出指针数组各元素所指的整数值和它存放的地址值。 include <stdio.h> main() { int i; int a[5]={1,3,5,7,9}; int*num[5]; int【 】; for(i=0;i<5;i++) num[i]=【 】; p=num+0; for(i=0;i<5;i++) { printf("%d %d\n",【 】); p++; } }
A.3 6 9
B.3 5 7
C.1 5 9
D.1 4 7