定义1个3X3的二维数组,求出每行的最大值,保存至1个一维数组。要求使用行指针完成访问每个元素,求最大值的功能。

行指针

数组:a[2][3]={ {1,2,3}{4,5,6}}

  • (行指针)a是整个数组的首地址 ,指向第一行,a+1指向第二行元素
  • (列指针)*a指向第一行的第一个元素,*(a+1)指向第二行第一个数==>对行指针取值就成了列指针
  •  (指向一个元素)*(a+1)+1指向第二行第二个元素
  • (取一个元素)*(*(a+1)+1)(也可写成a[1][1])表示第二行的第二个元素
  • 行指针还可以这样定义int (*p)[n],此处定义的p指针,每加1,移动n个地址位(针对不同二维数组定义不同的n值)

参考代码:

//定义1个3X3的二维数组,求出每行的最大值,保存至1个一维数组。
//
//要求使用行指针完成访问每个元素,求最大值的功能。
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
	int i, j;
	int a[3][3] = { 4,9,1,3,7,8,5,2,6 }, max[3];
	int(*pa)[3] = &a[0];//int (*p)[3] 指向一个大小为 3 的整型数组
	//取第0行的
	for (i = 0; i < 3; i++)//行
	{
		for (j = 0; j < 3; j++)
			printf("%d ", *(*(a + i) + j)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值