例33:有一个3*4的二维数组,要求用C语言实现指向元素的指针变量输出二维数组个元素的值。
解题思路:二维数组的元素时整型的,它相当于整型变量,可以用int*型指针变量指向它。二维数组的元素在内存中是按行顺序存放的,即存放完序号为0的行中的全部元素后,接着存放序号为1的行中的全部元素,依此类推。
本例是顺序输出数组中各元素之值,比较简单。如果要输出某个指定的数值元素,则应事先计算该元素在数组中的相对位置。
源代码演示:
#include<stdio.h>//头文件
int main()//主函数
{
int array[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};//定义二维数组,且赋初值
int *p,m;//定义指针变量和普通变量
for(m=0,p=array[0];p<array[0]+12;p++,m++)//for循环
{ if(m%4==0)//如果m%4的余数为0
{ printf("\n");//换行
} printf("%4d",*p);//输出元素值,宽度为4
} printf("\n");//换行
return 0;//主函数返回值为0
}
编译运行结果如下:
C语言 | 指向元素的指针变量输出二维数组元素的值文章来源: zhuanlan.zhihu.com,作者:,版权归原作者所有,如需转载,请联系作者。
原文链接:zhuanlan.zhihu.com/p/336924180