C语言小题,有一个3*4的二维数组,要求用指向元素的指针变量输出二维数组各元素的值。(指向数组元素的指针变量)

  • Post author:
  • Post category:其他



前言:


此篇是针对

指向数组元素的指针变量

方面的练习。


解题思路:


二维数组的元素是整型的,它相当于整型变量,可以用 int * 型指针变量指向它。二维数组的元素在内存中是按行顺序存放的,即存放完序号为0的行中的全部元素后,接着存放序号为1的行中的全部元素,以此类推。


正文:

#include<stdio.h>
int main() {
	int a[3][4]= {1,3,4,7,9,11,13,15,17,19,21,23};	//p是int * 型指针变量 
	int *p;											//使p依次指向下一个元素 
	for(p=a[0]; p<a[0]+12; p++) {					//p移动4次后换行 
		if((p-a[0])%4==0)printf("\n");				//输出p指向的元素的值 
		printf("%4d",* p);
	}
	printf("\n");
	return 0;
}


程序分析:


p 是一个 int * 型(指向整型数据)的指针变量,它可以指向一般的整型变量,也可以指向整型的数组元素。每次使 p 值加1,使 p 指向下一元素。第6行 if 语句的作用是使输出4个数据后换行。


总结:


运行结果:

在这里插入图片描述



版权声明:本文为Mr___Yin原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。