原题链接:[编程入门]自定义函数之整数处理
解题思路:
新建列表接受输入流,交换最大值与最后一个数,交换最小值与第一个数。以空格为间依次输出
注意事项:
首先参照错误代码:
a = list(input().split()) ''' 此处新建的列表为str类型a:['2', '1', '3', '4', '5', '6', '7', '8', '10', '9'] ''' for i in range(10): ''' 此处可用for i in a:直接读取列表元素,不必掉用range()函数迭代 ''' if a[i] == max(a): ''' if()语句多余,调用a.index()函数足以获取元素位置 ''' a[a.index(max(a))] = a[len(a) - 1] ''' 交换元素可合并为一行 ''' a[len(a) - 1] = a[i] if a[i] == min(a): a[a.index(min(a))] = a[0] a[0] = a[i] for i in range(10): print(a[i], end=' ')
参考代码:
a = list(map(int, input().split())) a[a.index(max(a))], a[len(a) - 1] = a[len(a) - 1], max(a) a[a.index(min(a))], a[0] = a[0], min(a) for i in a: print(i, end=" ")
代码所用函数详解:
input():获取标准输入"2 1 3 4 5 6 7 8 10 9"
split():以默认空字符对输入的字符串进行切片"'2', '1', '3', '4', '5', '6', '7', '8', '10', '9'"
map():会根据提供的函数对指定序列做映射。此处及对str型输入做强制类型转化为int
max(a):获取a列表最大元素的值
min(a):获取a列表最大元素的值
index():获取元素在列表中第一次出现的位置
0.0分
2 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复