📜  C测验– 109 |问题3(1)

📅  最后修改于: 2023-12-03 15:14:25.949000             🧑  作者: Mango

C测验– 109 | 问题3
问题描述

这个C测验的问题3要求在C程序中实现一个功能,并返回特定结果。

问题要求

你需要编写一个C程序,该程序接受一个整数数组和数组的长度作为输入,并返回数组中的最大值和最小值。

以下是函数原型:

void findMinMax(int arr[], int length, int *min, int *max);

函数接受一个整数数组 arr[] 和一个整数 length,表示数组的长度。minmax 参数是指向整数的指针,函数需要将最小值和最大值分别存储在这两个指针指向的变量中。

示例

以下是一个使用范例:

#include <stdio.h>

void findMinMax(int arr[], int length, int *min, int *max) {
    *min = arr[0];
    *max = arr[0];
    for (int i = 1; i < length; i++) {
        if (arr[i] < *min) {
            *min = arr[i];
        }
        if (arr[i] > *max) {
            *max = arr[i];
        }
    }
}

int main() {
    int arr[] = {23, 56, 42, 98, 7, 34};
    int length = sizeof(arr) / sizeof(arr[0]);

    int min, max;
    findMinMax(arr, length, &min, &max);

    printf("最小值:%d\n", min);
    printf("最大值:%d\n", max);

    return 0;
}

上述代码会输出:

最小值:7
最大值:98
注意事项
  • 请注意数组中元素的数据类型和范围。
  • 函数 findMinMax() 的参数 minmax 是指向 int 类型变量的指针。
  • 在代码中,我们默认输入的数组至少包含一个元素。