Am_yz 2023-03-27 20:20 采纳率: 91.3%
浏览 62

C语言数组中找最大值

有没有人告诉我下,这种错误是怎么产生了,我实在看不出来问题在哪啊,我问GPT,他也找不到真正原因在哪

img


int max(int arr[], int len) {
    int i;
    int max_value = arr[0];
    for (i = 1; i < len; i++) {
        if (arr[i] > max_value) {
            max_value = arr[i];
        }
    }
    return max_value;
}

int main() {
    int arr[] = { 12, 32, 44, 21, 78, 56, 90, 100, 65, 76, 99 };
    const int len = sizeof(arr) / sizeof(arr[0]);
    int max_value = max(arr, len);
    printf("The maximum value is %d\n", max_value);
    return 0;
}

img

  • 写回答

4条回答 默认 最新

  • Ke vin 2023-03-27 20:35
    关注

    const修饰len,相当于是常量,你那边的行参没有const,相当于扩大了len权限,应该是这样

    评论

报告相同问题?

问题事件

  • 修改了问题 3月27日
  • 修改了问题 3月27日
  • 创建了问题 3月27日