首页 > 用户发贴区 > 编程问题提问区 > 请问红的地方为什么出错呢
2009
03-11

请问红的地方为什么出错呢

/*程序功能:把一3*3矩阵最大元素放在中间*/


#include <stdio.h>
bianhuan(int juzhen1[N][N])
{
 int i,j,max,m,n,temp;
 int *p;
 p=&juzhen1[0][0];
 max=*p;
 for(i=0;i<=N-1;i++)
 for(j=0;j<=N-1;j++)
 {
  if(max<=*(p+i*N+j))
  {
   max=*(p+i*N+j);
   m=i;
   n=j;
  }
 }
 *(p+4)=temp;*(p+4)=*(p+m*3+n);*(p+m*3+n)=temp;
 return 0;
}
main()
{
 int i,j;
 int juzhen3[3][3]={1,2,3,4,5,6,7,8,9};
 bianhuan(int juzhen3[3][3]);
 for(i=0;i<=N-1;i++)
 for(j=0;j<=N-1;j++)
 printf(“%d “,juzhen3[i][j]);
 return 0;
}


请问红的地方为什么出错呢》有 2 条评论

  1. Freeze 说:

    #include <stdio.h>
    #define N 3
    bianhuan(int juzhen1[N][N])
    {
     int i,j,max,m,n,temp;
     int *p;
     p=&juzhen1[0][0];
     max=*p;
     for(i=0;i<=N-1;i++)
     for(j=0;j<=N-1;j++)
     {
      if(max<=*(p+i*N+j))
      {
       max=*(p+i*N+j);
       m=i;
       n=j;
      }
     }
     temp=*(p+4);*(p+4)=*(p+m*3+n);*(p+m*3+n)=temp;
    }
    int main()
    {
     int i,j;
     int juzhen3[3][3]={1,2,3,4,5,6,7,8,9};
     bianhuan(juzhen3);
     for(i=0;i<=N-1;i++)
     {
     for(j=0;j<=N-1;j++)
     printf(“%d “,juzhen3[i][j]);
     printf(“\n”);
     }
     return 0;
    }

     

     

  2. woxingwode 说:

    谢谢

留下一个回复