结果是
9 13 17 21
3 19
void main(){
int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}
int i,*ip,(*p)[4];
p=a+1; ip= p[0];
for(i=1;i <=4;ip+=2,i++)
printf(" %d\t",*ip);
printf("'n");
p=a;
for(i=0;i <2;p+ +,i++)
printf("“%d\t” ,*(p[i]+1));
printf("n")
}
欢迎小辣鸡,前面问题要是解决了,还请采纳一下哈
p=a+1,实现的行加1,直接从9开始啦!由于ip+=2,所以就从9开始每隔一个输出一个,因此是9,13,17,21
然后你有p=a,回到了二维数组开头
*(p[0]+1),输出的是第0行的第1列,就是3
然后你for循环中是p++,i++哦,p++使得p指向第1行啦,i++使得p[i]指向第2行啦,从而输出第2行第1列,也就是19啦