C语言 | 用指向元素的指针变量输出二维数组元素的值

例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语言 | 指向元素的指针变量输出二维数组元素的值 mp.weixin.qq.com图标

文章来源: zhuanlan.zhihu.com,作者:,版权归原作者所有,如需转载,请联系作者。

原文链接:zhuanlan.zhihu.com/p/336924180

(完)