C++ 算法:求 n 个数的最大值和最小值

问题描述:

给定 n 个整数,求出它们的最大值和最小值。

输入:

输入的第一行包含一个整数 n (1 <= n <= 20),表示输入的整数个数。 接下来的 n 行,每行包含一个整数,范围在 0 到 32767 之间。

输出:

输出一行,包含两个整数,分别为最大值和最小值。

示例:

输入:

5
1
99
3
6
0

输出:

99 0

代码实现:

#include <iostream>
#include <vector>
#include <climits>

int main() {
    int n;
    std::cin >> n;
    
    std::vector<int> nums(n);
    for (int i = 0; i < n; i++) {
        std::cin >> nums[i];
    }
    
    int maxNum = INT_MIN;
    int minNum = INT_MAX;
    
    for (int i = 0; i < n; i++) {
        if (nums[i] > maxNum) {
            maxNum = nums[i];
        }
        if (nums[i] < minNum) {
            minNum = nums[i];
        }
    }
    
    std::cout << maxNum << ' ' << minNum << std::endl;
    
    return 0;
}

代码解释:

  1. 首先,使用 std::cin 读取输入的整数 n 和 n 个整数。
  2. 使用 std::vector 存储输入的 n 个整数。
  3. 初始化最大值 maxNumINT_MIN,最小值 minNumINT_MAX
  4. 使用循环遍历所有输入的整数,比较当前整数与最大值和最小值,更新最大值和最小值。
  5. 最后,输出最大值和最小值。

注意:

  • 代码使用了 climits 头文件中的 INT_MININT_MAX 常量,它们分别表示整型数据的最小值和最大值。
  • 代码使用了 std::vector 容器,可以方便地存储动态大小的数组。
  • 代码使用了 std::cinstd::cout 进行输入输出操作。

本篇文章介绍了如何使用 C++ 语言求解 n 个数的最大值和最小值,并提供了详细的代码示例和解释。希望对大家有所帮助。

C++ 算法:求 n 个数的最大值和最小值

原文地址: https://www.cveoy.top/t/topic/qldi 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录