波波鱼来辣 2021-11-17 22:51 采纳率: 33.3%
浏览 37
已结题

内存区段错误怎么改啊

img

这个怎么改啊🙁

  • 写回答

2条回答 默认 最新

  • 关注

    C语言不允许使用变量定义数组的大小。给你改一下代码
    代码修改如下:

    #include <stdio.h>
    #include <stdlib.h>
    int main()
    {
        int n,m,b,sum=0;
        float score;
        int i,j;
        int** k;
        scanf("%d%d",&n,&m);
        k = (int**)malloc(sizeof(int*)*m);
        for (j=0;j<m;j++)
        {
            k[j] = (int*)malloc(sizeof(int)*n);
            for(i=0;i<n;i++)
            {
                scanf("%d",&k[j][i]);
                if(i==0)
                    b = k[j][0];
                else
                {
                    if(k[j][i] > b)
                        b = k[j][i];
                }
            }
            sum = sum +b;
        }
        score = 1.0*sum/m; //这里是除以m吧,你的行是m行啊
        printf("%.2f",score);
        for (i=0;i<m;i++)
        {
            free(k[i]);
            k[i]=0;
        }
        free(k);
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月26日
  • 已采纳回答 11月18日
  • 创建了问题 11月17日

悬赏问题

  • ¥15 单片机学习顺序问题!!
  • ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 如何绘制动力学系统的相图