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

来源:互联网 发布:hap编码软件 编辑:程序博客网 时间:2024/05/16 18:14

贺老师教学链接  C语言及程序设计提高 本课讲解


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

#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 (*p)[4], i, j;   p=a[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},{2,4,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;}





0 0