用C++解决Alice交友的身高匹配问题
```cpp #include <iostream> #include <cmath> #include <algorithm> using namespace std; int main() { // 定义存储身高的数组 int heights[4]; // 输入4个小朋友的身高 for (int i = 0; i < 4; ++i) { cin >> heights[i]; } // Alice的身高是数组的第一个元素 int aliceHeight = heights[0]; // 初始化最接近身高和最小差距 int closestHeight = heights[1]; int minDiff = abs(aliceHeight - heights[1]); // 从第2个小朋友开始遍历后面的小朋友身高 for (int i = 2; i < 4; ++i) { // 计算当前小朋友与Alice的身高差距 int diff = abs(aliceHeight - heights[i]); // 如果当前差距小于最小差距,或者差距相同但当前小朋友更矮 if (diff < minDiff || (diff == minDiff && heights[i] < closestHeight)) { // 更新最接近身高和最小差距 closestHeight = heights[i]; minDiff = diff; } } // 输出最接近的身高 cout << closestHeight << endl; return 0; } ``` ### 代码解释 - 定义整型数组 `heights` 存储 4 个小朋友的身高。 - 使用 `for` 循环获取 4 个小朋友的身高。 - 用 `aliceHeight` 存储 Alice 的身高(即数组第一个元素)。 - 先假设第二个小朋友身高是最接近的,将其赋值给 `closestHeight`,并计算其与 Alice 的身高差赋值给 `minDiff`。 - 从第三个小朋友开始遍历,计算每个小朋友与 Alice 的身高差,若差距更小或者差距相同但更矮,就更新 `closestHeight` 和 `minDiff`。 - 最后输出 `closestHeight`。 ######[AI问答 | 469点数解答 | 2026-05-24 13:15:24]
- 用C++解决Alice交友的身高匹配问题(字节豆包 | 469点数解答 | 2026-05-24 13:15:24)11
- C++ 实现找出与 Alice 身高最接近的小朋友身高(字节豆包 | 487点数解答 | 2026-05-23 19:16:22)12
- C++ 解决找出与 Alice 身高最接近的朋友身高问题(字节豆包 | 577点数解答 | 2026-05-24 11:40:27)11
- JavaScript:解构赋值与模板字符串实现从对象提取信息并创建语句(阿里通义 | 138点数解答 | 2024-10-29 09:40:13)240
- 巧用解构赋值与模板字符串,从对象提取信息输出个性语句!(字节豆包 | 64点数解答 | 2024-10-29 21:04:59)285
- C++ 代码实现:多次询问姓名并决定是否重复程序(字节豆包 | 267点数解答 | 2024-10-22 08:36:28)257
- HTML 实战:解构对象提取信息并生成个性语句(讯飞星火 | 159点数解答 | 2024-10-26 23:27:20)224
- C++ 实现:Alice 游戏中计算筐外球数的巧妙解法(阿里通义 | 676点数解答 | 2024-11-13 08:34:26)268
- 军队院校学员BMI合格人数统计程序揭秘(字节豆包 | 137点数解答 | 2025-04-15 11:10:36)253
- C3期末:精准求解 3 - 20 范围内数列第 k 项值及注意要点(字节豆包 | 242点数解答 | 2025-06-15 11:26:19)172
- C++求解:查找3 - 20项数列第k项值及注意要点(字节豆包 | 325点数解答 | 2025-06-15 11:27:11)196
- Python正则表达式:精准匹配字符串“abcablc”中的第二个“a”(字节豆包 | 554点数解答 | 2025-06-12 15:25:28)138