酷代码 AI
菜单

用C++解:桃子唱了一首歌曲,她想计算整首歌曲的美妙度,具体来说,她需要找到n个数字中的最大值和最小值,并计算最大值除以最小值的结果。

```cpp #include <iostream> #include <vector> #include <algorithm> int main() { int n; std::cout << "请输入数字的个数n: "; std::cin >> n; std::vector<int> numbers(n); std::cout << "请依次输入这" << n << "个数字: "; for (int i = 0; i < n; ++i) { std::cin >> numbers[i]; } auto min_max = std::minmax_element(numbers.begin(), numbers.end()); int min_num = *min_max.first; int max_num = *min_max.second; if (min_num == 0) { std::cout << "最小值为0,无法进行除法运算。" << std::endl; } else { double result = static_cast<double>(max_num) / min_num; std::cout << "美妙度(最大值除以最小值)为: " << result << std::endl; } return 0; } ``` 代码解释 1. 输入数字个数:程序首先提示用户输入数字的个数`n`,并将其存储在变量`n`中。 2. 输入数字:接着,程序提示用户依次输入`n`个数字,并将这些数字存储在`std::vector<int>`类型的`numbers`向量中。 3. 查找最大值和最小值:使用`std::minmax_element`函数查找`numbers`向量中的最小值和最大值的迭代器,分别存储在`min_max.first`和`min_max.second`中。然后通过解引用操作获取最小值和最大值。 4. 计算美妙度:检查最小值是否为0,如果为0则输出无法进行除法运算的提示信息;否则,将最大值转换为`double`类型并除以最小值,得到美妙度结果并输出。 5. 返回结果:程序返回0表示正常结束。 [2026-02-02 19:09:44 | AI问答 | 442点数解答]

服务商
相关提问
发财导航,免费问AI
实用工具查看更多