#include <stdio.h>
main()
{
int a[3][3] = {0,1,2,3,4,5,6,7,8};
int i,j;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d\t",a[i][j]);
printf("\n");
}
}
下标法
双循环 外循环 控制行 内循环 控制列
输出
0 1 2
3 4 5
6 7 8
#include <stdio.h>
main()
{
int a[3][3] = {0,1,2,3,4,5,6,7,8},*b;
b = a[0];
for(;b<a[0]+9;b++)
printf("%d\t",*b);
}
列指针
输出
0 1 2 3 4 5 6 7 8
当b地址为a[0]+8时 指向最后一个元素 为8
间隔是8个
然后b加1 为a[0]+9 判断为假
#include <stdio.h>
main()
{
int a[3][3] = {0,1,2,3,4,5,6,7,8};
int i,j;
int (*p)[3];
p = a;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d\t",p[i][j]);
printf("\n");
}
}
行指针
输出
0 1 2
3 4 5
6 7 8
网友评论