测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A17132. 长征路线站点筛选(数组 + 条件过滤 + 排序)

填空题 中等

题目描述

长征路线站点筛选(数组 + 条件过滤 + 排序)

题目描述

红军长征途经 10 个关键站点,每个站点记录了海拔高度(米)。为了选择行军更轻松的路线,需要筛选出海拔低于 2000 米的站点,并按海拔从小到大排序输出。

输入格式

10 个整数,空格分隔(500 ≤ 海拔 ≤ 4500)

输出格式

筛选后排序的整数,空格分隔(无符合条件则输出空行)

参考答案

#include <iostream> #include <algorithm> using namespace std; int main() { int h[10], res[10], cnt = 0; for (int i = 0; i > h[i]; if (h[i] < 2000) res[cnt++] = h[i]; } sort(res, res + cnt); for (int i = 0; i < cnt; i++) { if (i) cout << " "; cout << res[i]; } cout << endl; return 0; }

答案解析

读取输入的10个整数,存入数组;遍历数组,筛选出小于2000的元素,存入新集合;对新集合中的元素进行升序排序;输出排序后的元素,以空格分隔;若无符合条件的元素,则输出空行。

上一题 下一题