C.C.C 发表于 2013-1-26 12:26:15

C/C++

/*指针实现M*N数组array的练习
*指针*p实现
*指针数组*q实现
*array实现
*/

#include <stdio.h>
#define M 5
#define N 6

int main()
{
    int array;
    int cout=1;
    int *p,*q,**r;
    int k=0,l=0,v=0;
   
   
    for(int x=0;x<M;x++)      //数组用1,2,3。。。初始化
    {
       for(int y=0;y<N;y++)
       {
          array=cout;
          cout++;
       }
    }
         
    p=&array;               //用指针P实现数组输出
    for(int i=0;i<M*N;i++)
    {
      printf("%4d",*(p+i));
      k++;
      if(!(k%N))               //实现换行
      printf("\n");
    }
   
    printf("\n");

    for(int j=0;j<N;j++)         //列指针q的赋值
    {
      q=&array;
    }
   
    for(int s=0;s<M;s++)
    {
       for(int t=0;t<N;t++)
       {
         printf("%4d",*(q+N*s));//用列指针q实现数组输出
         l++;
         if(!(l%N))               //实现换行
         printf("\n");
       }
    }
   
   printf("\n");

    for(int c=0;c<M;c++)
    {
       for(int d=0;d<N;d++)
          {
             printf("%4d",*(*(array+c)+d));
             v++;
             if(!(v%N))               //实现换行
             printf("\n");
         }
    }
}
页: [1]
查看完整版本: C/C++