酷代码 AI
菜单
服务商
DeepSeek字节豆包
更多选项

bu nen yong zhe xie yui hua mao pao

如果你不想使用冒泡排序或标准库的排序函数,也可以采用其他方式来找出第三大的数。可以通过三次遍历数组,每次找出最大的数并标记,最终找到第三大的数。 ### 📝代码示例 ```cpp #include <cstdio> const int N = 52000; int n, a[N]; int main() { // 读取整数 n scanf("%d", &n); // 读取 n 个整数到数组 a 中 for (int i = 0; i < n; i++) { scanf("%d", &a[i]); } int max1 = 0, max2 = 0, max3 = 0; // 第一次遍历找出最大的数 for (int i = 0; i < n; i++) { if (a[i] > max1) { max1 = a[i]; } } // 第二次遍历找出第二大的数 for (int i = 0; i < n; i++) { if (a[i] > max2 && a[i] < max1) { max2 = a[i]; } } // 第三次遍历找出第三大的数 for (int i = 0; i < n; i++) { if (a[i] > max3 && a[i] < max2) { max3 = a[i]; } } // 输出结果 printf("%d", max3); return 0; } ``` ### 🔍代码解释 1. **输入部分**:使用 `scanf` 读取整数 `n` 以及 `n` 个整数到数组 `a` 中。 2. **寻找最大数**:第一次遍历数组,找出数组中的最大值 `max1`。 3. **寻找第二大数**:第二次遍历数组,找出小于 `max1` 的最大值,即第二大的数 `max2`。 4. **寻找第三大数**:第三次遍历数组,找出小于 `max2` 的最大值,即第三大的数 `max3`。 5. **输出结果**:使用 `printf` 输出第三大的数 `max3`。 ### <bt>不使用排序算法:找出数组中第三大的数<bt> ######[AI问答 | 537点数解答 | 2026-08-04 22:58:15]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]