erttfff 2022-09-28 11:10 采纳率: 50%
浏览 30
已结题

为什么max的值不合适呢?可以帮我解答一下吗?

#include <stdio.h>
#include <stdlib.h>

int main()
{
int i,j;
int a[3][4];
int min=a[0][0], max=a[0][0];
double sum=0,avg;
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{
scanf("%d",&a[i][j]);
sum=sum+a[i][j];
}
}
avg=sum/4;
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{
if(a[i][j]>max)
{
max=a[i][j];
}
if(a[i][j]<min)
{
min=a[i][j];
}
}
}
printf("max=%d,min=%d,avg=%.2f\n",max,min,avg);
return 0;
}

  • 写回答

3条回答 默认 最新

  • 快乐鹦鹉 2022-09-28 11:11
    关注

    int min=a[0][0], max=a[0][0];
    这时候因为a数组还没有初始化,所以min和max值都是随机值
    需要数组输入后再赋值。
    平均值也不对啊,怎么除以4呢,应该除以12

    #include <stdio.h>
    #include <stdlib.h>
    
    int main()
    {
        int i,j;
        int a[3][4];
        int min,max;
        double sum=0,avg;
        for(i=0;i<3;i++)
        {
            for(j=0;j<4;j++)
            {
                scanf("%d",&a[i][j]);
                sum=sum+a[i][j];
            }
        }
        min=max=a[0][0];
        avg=sum/12;
        for(i=0;i<3;i++)
        {
            for(j=0;j<4;j++)
            {
                if(a[i][j]>max)
                {
                    max=a[i][j];
                }
                if(a[i][j]<min)
                {
                    min=a[i][j];
                }
            }
        }
        printf("max=%d,min=%d,avg=%.2f\n",max,min,avg);
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 9月28日
  • 已采纳回答 9月28日
  • 创建了问题 9月28日

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度