m0_58548567
2021-05-31 10:18
采纳率: 83.3%
浏览 20

自定义函数,求一个三阶矩阵的平均值

 显示没有错误,但出不来结果,想请教下需要改改哪里

#include<stdio.h>
int main()
   
{   int  mean(int a[3][3]);
    
    int i,j,a[3][3];
    int k;
    printf("请输入9个整数\n");
    for (i=0;i<3;i++)
    
    for (j=0;j<3;j++)
        
            scanf("%d",&a[i][j]);
        
    k=mean(a[i][j]);
    printf("平均值为=%d\n",k);
    return 0;
}
int  mean (int a[3][3])

    int i,j;
    int  k=0;
    for(i=0;i<3;j++)
    {
        for(j=0;j<3;j++)
        {
            k=k+a[i][j];
            
        }
    }
    return  (k/9);
}

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • qfl_sdu 2021-05-31 10:25
    已采纳

    有什么现象,出不来结果是什么意思。

    mean(a[i][j])这么写不对。

    在mean函数中,K是整数,k/9会只取整,修改如下:

    #include<stdio.h>
    int main()
    {   
    	float  mean(int a[][3],int n);
    	int i,j,a[3][3];
    	float k;
    	printf("请输入9个整数\n");
    	for (i=0;i<3;i++)
    		for (j=0;j<3;j++)
    			scanf("%d",&a[i][j]);
    	k=mean(a,3);
    	printf("平均值为=%.2f\n",k);
    	return 0;
    }
    float  mean (int a[][3],int n)
    { 
    	int i,j;
    	int  k=0;
    	for(i=0;i<n;i++)
    	{
    		for(j=0;j<3;j++)
    		{
    			k=k+a[i][j];
    		}
    	}
    	return  (k/9.0);
    }
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题