刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

某班"天天向上"小组共有6个同学,姓名和身高数据分别存放在列表a中,编写程序实现小组同学按身高从高到低输出名单,运行结果如图所示: undefined 程序代码如下,请在划线处补充完整: a=[[“李洪全”,135],[“王倩倩”,154],[“吴乐天”,148],[“周立新”,165],[“鲁正”,158],[“杨颖颖”,150]] for i in range(1,len(a)): for j in range(0,++++): if a[j][1]++++ a[j+1][1]: a[j],a[j+1]=a[j+1],a[j] print(“小组名单是:”) for i in range(len(a)): print(++++ )

使用微信搜索喵呜刷题,轻松应对考试!

答案:

参考程序:

a=[[“李洪全”,135],[“王倩倩”,154],[“吴乐天”,148],[“周立新”,165],[“鲁正”,158],[“杨颖颖”,150]]

for i in range(1,len(a)):

for j in range(0, len(a)-i):

if a[j][1] < a[j+1][1]:

a[j],a[j+1]=a[j+1],a[j]

print(“小组名单是:”)

for i in range(len(a)):

print(a[i][0])

本题考查冒泡排序算法。从外循环看,6个元素排5趟,应该能全部排整齐。内循环每趟主要从第一个元素开始,相邻元素两两相比,i=1时,j最终取到4,i=2时,j最终取到3,i=3时,j最终取到2,i=2时,j最终取到1,i=1时,j最终取到0,由于range()的终值是取不到的,故第一空应填len(a)-i;根据题目从高到低的要求,若前一个数小于后一个数,则应将其往后移,故第二空应为"<";由输出结果观察可知,只需要输出排序后列表中的姓名部分,故第三空应填a[i][0]。

解析:

【喵呜刷题小喵解析】本题考查冒泡排序算法。首先,我们需要理解题目中的列表a,它包含了6个同学的信息,每个同学的信息是一个包含姓名和身高的列表。为了按照身高从高到低输出名单,我们可以使用冒泡排序算法。冒泡排序的基本思想是:通过相邻元素两两比较和交换,使得每一趟排序后,最大的元素被“冒泡”到正确的位置。在程序中,外层循环控制排序的趟数,内层循环控制每趟排序中相邻元素的比较和交换。对于第一空,由于range()的终值是取不到的,所以第一空应填len(a)-i。对于第二空,根据题目从高到低的要求,若前一个数小于后一个数,则应将其往后移,所以第二空应为"<"。对于第三空,由输出结果观察可知,只需要输出排序后列表中的姓名部分,所以第三空应填a[i][0]。
创作类型:
原创

本文链接: 某班"天天向上"小组共有6个同学,姓名和身高数据分别存放在列表a中,编写程序实现小组同学按身

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share