求二维数组元素和的4种等价方式(利用二维数组和指针)
来源:互联网 发布:linux读取文件指定行 编辑:程序博客网 时间:2024/05/16 05:59
#include<stdio.h>
void main()
{
int a[2][3]={{1,2,3},{4,5,6}},i,j,sum;
int *p;//定义一级指针变量
int (*q)[3];//定义二级指针变量
for(sum=0,i=0;i<2;i++)//一维数组方式
for(j=0;j<3;j++)
sum=sum+*(a[i]+j);
printf("%d\n",sum);
for(sum=0,i=0;i<2;i++)//数组名方式
for(j=0;j<3;j++)
sum=sum+*(*(a+i)+j);
printf("%d\n",sum);
p=a[0];//指向数组元素的指针
for(sum=0,i=0;i<2;i++)
for(j=0;j<3;j++)
sum=sum+*(p++);
printf("%d\n",sum);
q=a;//指向二维数组行的指针
for(sum=0,i=0;i<2;i++,q++)
for(j=0;j<3;j++)
sum=sum+*(*q+j);
printf("%d\n",sum);
}
void main()
{
int a[2][3]={{1,2,3},{4,5,6}},i,j,sum;
int *p;//定义一级指针变量
int (*q)[3];//定义二级指针变量
for(sum=0,i=0;i<2;i++)//一维数组方式
for(j=0;j<3;j++)
sum=sum+*(a[i]+j);
printf("%d\n",sum);
for(sum=0,i=0;i<2;i++)//数组名方式
for(j=0;j<3;j++)
sum=sum+*(*(a+i)+j);
printf("%d\n",sum);
p=a[0];//指向数组元素的指针
for(sum=0,i=0;i<2;i++)
for(j=0;j<3;j++)
sum=sum+*(p++);
printf("%d\n",sum);
q=a;//指向二维数组行的指针
for(sum=0,i=0;i<2;i++,q++)
for(j=0;j<3;j++)
sum=sum+*(*q+j);
printf("%d\n",sum);
}
阅读全文
0 0
- 求二维数组元素和的4种等价方式(利用二维数组和指针)
- 二维数组和二维指针
- 二维数组和二维指针
- 二维数组和二维指针
- 二维指针和二维数组
- 二维数组和二维指针
- 二维指针和二维数组
- 二维数组和二维指针的关系
- 二维指针和二维数组的关系
- 二维指针和二维数组的区别
- 二维数组和二维指针的关系
- 17、指针与二维数组--二维数组元素利用指针的三种输出方法
- 用指针数组处理一个二维数组,求出二维数组所有元素的和。
- 二维数组和指针
- 二维数组和指针
- 二维数组和指针
- 指针和二维数组
- 二维数组和指针
- 每天定个小目标,总结一下
- TreeMap
- 单链表的实现
- Spring中@Transactional事务回滚(含实例详细讲解,附源码)
- Linux系统编译VLC-Android
- 求二维数组元素和的4种等价方式(利用二维数组和指针)
- 修改Linux系统主机名
- java简单的基础轮廓
- stm32_018_stm32自身唯一ID读取
- NOIP2017 D1T3 列队
- Java 五种类实例化的方法与初始化顺序
- 初学者---Android 一款好用的Dialog开源框架NiftyDialogEffects
- MSP430G2553 串口通信
- 【BZOJ】4403 序列统计 Lucas