信息技术来源:2026年3月杭州二中高三开学适应性考试
第 7 题
答案与解析
本题解析
参考答案
B
程序分析
i = 0, s = 0, f = 1 → i < 6?
i < 6? —是→ a[i] < a[i+1]?
a[i] < a[i+1]? —是→ s ← s + a[i]*f → f ← -1 * f → i ← i + 1
a[i] < a[i+1]? —否→ s ← s + a[i+1] → i ← i + 1
i ← i + 1 → i < 6?
i < 6? —否→ 输出s循环从i=0开始,每轮比较a[i]与a[i+1],再令i加1,因此共处理下标0~5对应的6组相邻元素。
当a[i]<a[i+1]时,将a[i]乘以f后累加到s,再改变f的符号。f初值为1,所以各次进入这一分支时,依次加上、减去、加上、减去对应的a[i]。当条件不成立时,直接加上a[i+1],且f保持不变。符号只在“是”分支中切换,并非每轮循环都切换。
从s=0、f=1开始,各轮变化如下:
| i | 相邻元素比较 | 本轮对s的操作 | 本轮结束时s | 本轮结束时f |
|---|---|---|---|---|
| 0 | 3<8,成立 | 加3 | 3 | -1 |
| 1 | 8<5,不成立 | 加5 | 8 | -1 |
| 2 | 5<7,成立 | 减5 | 3 | 1 |
| 3 | 7<9,成立 | 加7 | 10 | -1 |
| 4 | 9<4,不成立 | 加4 | 14 | -1 |
| 5 | 4<6,成立 | 减4 | 10 | 1 |
随后i增至6,循环结束,输出s的值为10。
问题反馈
解析有疑问或显示异常?请先复制题目信息,再打开反馈表单填写。
题目编号:2026_03_G3_hangerkaixue_q007
