You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C语言如何获取Float数组的最大值与最小值 现有代码求修复

代码问题排查与修复

问题列表

  • 数组类型不匹配:需求是存储Float类型数值,但代码中定义arr为int类型数组,存储浮点数会丢失小数部分,导致计算结果错误
  • 输入格式符错误:scanf中使用%d读取整型,读取float类型数据需要使用%f格式符
  • 长度变量类型不合理:数组长度size是固定整数5,定义为float类型没有必要,循环判断时会产生不必要的隐式类型转换,建议改为int类型
  • 代码排版问题:原代码中第一个printf语句的换行符\n排版异常,会导致编译报错

修复后完整代码

#include "stdio.h"
#define MAX_SIZE 100
int main()
{
    float arr[MAX_SIZE], max, min;
    int i, size = 5;
    for(i=0; i<size; i++)
    {
        scanf("%f", &arr[i]);
    }
    max = arr[0];
    min = arr[0];
    for(i=1; i<size; i++)
    {
        if(arr[i] > max)
        {
            max = arr[i];
        }
        if(arr[i] < min)
        {
            min = arr[i];
        }
    }
    printf("Maximum element = %0.2f\n", max);
    printf("Minimum element = %0.2f", min);
    return 0;
}

内容的提问来源于stack exchange,提问作者Vladyslav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 03:24:02