www1818518 2021-06-17 13:10 采纳率: 78.6%
浏览 317
已采纳

C语言期末题目求助!!!!!!!!

题目描述设计一个函数,该函数用于求一个任意大小的二维double型数组的平均值。该函数的名字叫做matrixAvg

 

请使用下面的main函数测试你设计的函数

 

int main(){

int M,N;

scanf("%d%d",&M,&N);

double aver,a[M][N];

int i,j;

for(i=0;i<M;i++)

for(j=0;j<N;j++)

scanf("%lf",&a[i][j]);

        aver=matrixAvg(M,N,a);

printf("%.2f\n",aver);

return 0;

}

输入描述第一行输入整数M和N

从第二行开始,输入M行,每行输入N个double型的数

输出描述输出数组的平均值

提示无

样例输入复制样例输入数据

3 4
1 2 3 4
5 6 7 8
9 10 11 12

样例输出6.50

允许最长运行时间3000ms

允许使用最大内存1024KB

  • 写回答

1条回答 默认 最新

  • hubei_dxx 2021-06-17 14:24
    关注
    double matrixAvg(int m, int n, double** a)
    {
        int i,j;
        double sum = 0.0;
        for(i=0;i<m;i++)
            for(j=0;j<n;j++)
                sum += a[i][j];
        sum = sum / (m * n);
        return sum;
    }
    int main(){
        int M,N;
        int i,j;
    
        scanf("%d%d",&M,&N);
    
        double aver = 0.0;
        double **a = new double* [M];
        for(i=0;i<M;i++)
            a[i] = new double[N];
    
        for(i=0;i<M;i++)
            for(j=0;j<N;j++)
                scanf("%lf",&a[i][j]);
    
        aver=matrixAvg(M,N,a);
        printf("%.2f\n",aver);
    
        for(i=0;i<M;i++)
           delete [] a[i];
        delete [] (a);
    
        return 0;
    }

    main函数中a的定义有点问题,改成了动态二维数组

     

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置