时缔&实验室

有时候,正是那些意想不到之人,成就了无人能成之事。——艾伦·图灵

第10周 C语言及程序设计提高例程-35 使用指针操作二维数组

问题及代码:

/*使用指向二维数组元素的指针*/

#include<stdio.h>
int main()
{
  int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};
  int *p;
  for(p=a[0];p<a[0]+12;p++)
   {
     printf("%3d",*p);
    }
   return 0;
 }

/*使用指向一维数组元素的指针*/

#include<stdio.h>
int main()
{
  int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};
  int i,j,(*p)[4];
  for(p=a,i=0;i<3;i++,p++)
   {
     for(j=0;j<4;j++)
        printf("%3d",*(*p+j));
     printf("\n");
    }
   return 0;
}

/*使用指向一维数组元素的指针之二*/

#include<stdio.h>
int main()
{
  int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};
  int i,j,(*p)[4];
  p=a[0]; //p指向0行0列;
  for(i=0;i<3;i++)
  {
    for(j=0;j<4;j++)
      printf("%d\t",*(*(p+i)+j));
    printf("\n");
  }
 return 0;
}
     
/*使用指针数组*/

#include<stdio.h>
int main()
{
  int b[2][3]={1,2,3},{4,5,6};
  int *pb[2];
  int i,j;
  pb[0]=b[0];
  pb[1]=b[1];
  for(i=0;i<2;i++)
   {
     for(j=0;j<3;j++,pb[i]++)
       printf("%2d",*pb[i]);
     printf("\n");
   }
  return 0;
}


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Emperor_21AD_ShiDi/article/details/51554286
个人分类: C语言 C语言案例
上一篇第10周 C语言程序设计(新2版) 3.5例题 函数atoi(s),将字符串转换为对应数值
下一篇第10周 C语言及程序设计提高例程-36 多维数组作函数参数
想对作者说点什么? 我来说一句

C语言及程序设计

2015年03月17日 889KB 下载

没有更多推荐了,返回首页

关闭
关闭