信息技术来源:2026年4月稽阳联谊学校高三联考
第 11 题
答案与解析
本题解析
参考答案
C
解题思路
两段循环依次比较相邻元素,并在左大右小时交换,采用冒泡排序的思想。本程序先从左向右、再从右向左各处理一趟,比较范围受x限制。
程序分析
for i in range(len(a)-1-x):
if a[i]>a[i+1]:
a[i],a[i+1]=a[i+1],a[i]列表长度为6,i依次取0至4-x。每次把相邻元素中较大的移到右边,使下标0至5-x范围内的最大值逐步移动到该范围的最右端。
for i in range(len(a)-2,x,-1):
if a[i]<a[i-1]:
a[i],a[i-1]=a[i-1],a[i]第二趟接着处理第一趟形成的列表。i从4递减到x+1,每次比较a[i]与a[i-1]并把较小值移到左边,使下标x至4范围内的最小值移动到下标x处。
分别代入x=0、1、2,每次都从初始列表[5,4,9,0,2,3]开始:
| x | 第一趟结束后的a | 第二趟结束后的a(最终结果) |
|---|---|---|
| 0 | [4,5,0,2,3,9] | [0,4,5,2,3,9] |
| 1 | [4,5,0,2,9,3] | [4,0,5,2,9,3] |
| 2 | [4,5,0,9,2,3] | [4,5,0,2,9,3] |
三种输入的最终结果依次对应A、B、D。C中的[4,5,0,2,3,9]只是x=0时第一趟结束后的状态,第二趟还会将0向左移到首位。
问题反馈
解析有疑问或显示异常?请先复制题目信息,再打开反馈表单填写。
题目编号:2026_04_G3_jiyangliankao_q011
