爱发博客的嗯哼 2022-04-20 22:40 采纳率: 80%
浏览 22
已结题

为什么这一题会报错啊?


#include <stdio.h>
void max(int *p,int *r,int *c,int *max)
{
    for(int i=0;i<3;i++)
    {
        for(int j=0;j<4;j++)
        {
            if(*(*(p+i)+j)>max)
            {
                *r=i;
                *c=j;
                max=*(*(p+i)+j);
            }
        }
    }
}
int main()
{
    int t[3][4];
    int (*p)[4];
    p=t;
    for(int i=0;i<3;i++)
    {
        for(int j=0;j<4;j++)
        scanf("%d",&t[i][j]);
    }
    int row=0,column=0,max=0;
    max(p,&row,&column,&max);//这个地方会报错,好像是指针传输的问题
    printf("max=%d\nrow=%d\ncolumn=",max,row,column);
}

https://pintia.cn/problem-sets/1498493386138501120/problems/1498493662673936391

  • 写回答

1条回答 默认 最新

  • qzjhjxj 2022-04-20 23:15
    关注

    修改见注释,供参考:

    #include <stdio.h>
    void max_m(int(*p)[4],int *r,int *c,int *max)
    //void max(int *p,int *r,int *c,int *max)
    {
        for(int i=0;i<3;i++)
        {
            for(int j=0;j<4;j++)
            {
                if(*(*(p+i)+j) > *max) //if(*(*(p+i)+j)>max)
                {
                    *r=i;
                    *c=j;
                    *max=*(*(p+i)+j); //max=*(*(p+i)+j);
                }
            }
        }
    }
    int main()
    {
        int t[3][4];
        int (*p)[4];
        p=t;
        for(int i=0;i<3;i++)
        {
            for(int j=0;j<4;j++)
            scanf("%d",&t[i][j]);
        }
        int row=0,column=0,max=0;
        max_m(p,&row,&column,&max);//这个地方会报错,好像是指针传输的问题
        printf("max=%d\nrow=%d\ncolumn=%d",max,row,column);
        //printf("max=%d\nrow=%d\ncolumn=",max,row,column);
     
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月29日
  • 已采纳回答 4月21日
  • 创建了问题 4月20日

悬赏问题

  • ¥15 高价求中通快递查询接口
  • ¥15 解决一个加好友限制问题 或者有好的方案
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验
  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥30 求解达问题(有红包)