这里是一段防爬虫文本,请读者忽略。
本文原创首发于CSDN,作者IDYS
博客首页:https://blog.csdn.net/weixin_41633902/
本文链接:https://blog.csdn.net/weixin_41633902/article/details/107807890
未经授权,禁止转载!恶意转载,后果自负!尊重原创,远离剽窃!
对输入的数进行冒泡排序
题目要求
- 可以接收任意个用户输入的数字
- 对用户输入的数字进行冒泡排序
分析
- 对用户的非法输入进行提示和程序退出
- 让用户能够结束数字的输入,然后对数字排序
- 第一轮:在冒泡排序中,首先将第1个数与第2个数进行排序,如果第1个数大于第2个数,那么交换。然后继续比较第2个数与第3个数,一直到最后两个数的比较。第二轮:因为最后一个数是最大的,所以最后一个数不用参与第二轮比较。第三轮:最后两个数都不用参加比较。依次即可
- 一共比较n轮,n代表用户输入的数字个数
演示
a = []
print("**************** 程序开始 ****************")
print("1. 输入数字 则存入数字")
print("2. 输入字符 ' q ' 则退出", end="\n")
while 1:
Str = input("请输入你数字\n")
if Str.isdigit():
num = int(Str)
a.append(num)
else:
if Str == 'q':
break
else:
print("您的输入不和法程序退出")
exit(-1)
for i in range(len(a)):
for j in range(1,len(a)-i):
if a[j] < a[j-1]:
k = a[j]
a[j] = a[j-1]
a[j-1] = k
print(a)
**************** 程序开始 ****************
1. 输入数字 则存入数字
2. 输入字符 ' q ' 则退出
请输入你数字
23
请输入你数字
12
请输入你数字
45
请输入你数字
67
请输入你数字
89
请输入你数字
12
请输入你数字
q
[12, 12, 23, 45, 67, 89]
写在最后的话:
- 无论每个知识点的难易程度如何,我都会尽力将它描绘得足够细致
- 欢迎关注我的CSDN博客,IDYS’BLOG
- 持续更新内容:
linux基础 | 数据通信(路由交换,WLAN) | Python基础 | 云计算 - 如果你有什么疑问,或者是难题。欢迎评论或者私信我。你若留言,我必回复!
- 虽然我现在还很渺小,但我会做好每一篇内容。谢谢关注!