酷代码 AI
菜单
服务商

c++ 桃子唱了一首歌曲,她想计算整首歌曲的美妙度,具体来说,她需要找到n个数字中的最大值和最小值,并计算最大值除以最小值的结果。 输入: 共两行。 第一行为一个整数n(n<100),表示音符的数量。 第二行为n个整数a[i],表示每个音符的美妙度。(0 < ai < 1000) 输出: 一个小数,表示整首歌曲的美妙度。

```cpp #include <iostream> #include <iomanip> using namespace std; int main() { int n; // 读取音符的数量 cin >> n; int maxVal = 0; int minVal = 1000; for (int i = 0; i < n; i++) { int num; // 读取每个音符的美妙度 cin >> num; // 更新最大值 if (num > maxVal) { maxVal = num; } // 更新最小值 if (num < minVal) { minVal = num; } } // 计算美妙度 double beauty = static_cast<double>(maxVal) / minVal; // 输出结果,保留两位小数 cout << fixed << setprecision(2) << beauty << endl; return 0; } ``` 代码注释解释: 1. 首先包含必要的头文件,`iostream`用于输入输出,`iomanip`用于设置输出精度。 2. 在`main`函数中,先读取音符的数量`n`。 3. 初始化`maxVal`为0,`minVal`为1000,用于存储最大值和最小值。 4. 通过循环读取每个音符的美妙度,在循环中更新`maxVal`和`minVal`。 5. 计算美妙度,将`maxVal`转换为`double`类型以避免整数除法。 6. 使用`fixed`和`setprecision(2)`设置输出结果保留两位小数。 我在以往的开发过程中,碰到过以下几点需要格外小心处理的地方: 1. 输入的范围要严格把控,确保`n`小于100,每个音符的美妙度在0到1000之间,避免越界。 2. 进行除法运算时,要注意数据类型,避免整数除法导致结果不准确。 3. 输出结果的精度设置要根据题目要求准确设置,避免输出不符合要求。 [2025-11-28 19:12:52 | AI写代码神器 | 466点数解答]

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