1 #题目:输入三个整数x,y,z,请把这三个数由小到大输出。
代码:
2
3 x = int(input('请输入第一个整数:'))
4 y = int(input('请输入第二个整数:'))
5 z = int(input('请输入第三个整数:'))
6
7 if x > y:
8 num_max = x
9 if num_max < z:
10 num_max = z
11 else:
12 num_max = y
13 if num_max < z:
14 num_max = z
15
16
17 if x < y:
18 num_min = x
19 if num_min > z:
20 num_min = z
21 else:
22 num_min = y
23 if num_min > z:
24 num_min = z
25
26
27 if x > y:
28 if z > x:
29 num_mid = x
30 elif z < x and z > y:
31 num_mid = z
32 else:
33 num_mid = y
34 else:
35 if z < x:
36 num_mid = x
37 elif z > x and z < y:
38 num_mid = z
39 else:
40 num_mid = y
41
42 print('输入的三个数字按从小到大排列分别为%d,%d,%d'%(num_min,num_mid,num_max))运行结果:
[root@HK code_100]# python code_5.py 请输入第一个整数:3 请输入第二个整数:5 请输入第三个整数:7 输入的三个数字按从小到大排列分别为3,5,7 [root@HK code_100]#
代码解释:
这个题的解题思路是通过比较,分别确认这三个数中的最大数,最小数,以及中间数,然后按顺序输出
其实按照list的排序方法最简单,但是用下面方法可以巩固知识练习判断语句。
3 x = int(input('请输入第一个整数:')) # 接收三个整数
4 y = int(input('请输入第二个整数:'))
5 z = int(input('请输入第三个整数:'))
6 ############################################################### 求三个数中的最大值
7 if x > y: #当 x > y 时,。
8 num_max = x #将x赋值给最大值
9 if num_max < z: #如果最大值小于z
10 num_max = z #那么z就是最大值
11 else:
12 num_max = y #else,如果x<y,那么最大值就是y
13 if num_max < z: #如果最大值小于z
14 num_max = z #那么就将z赋值给最大值,这个else条件默认如果最大值大于z,那么最大值保持不变
15
16##################################################################求三个数中的最小值
17 if x < y: #思路与求最大值相同
18 num_min = x
19 if num_min > z:
20 num_min = z
21 else:
22 num_min = y
23 if num_min > z:
24 num_min = z
25 #################################################################求三个数中的中间值
26
27 if x > y: #如果x>y
28 if z > x: #如果z >x
29 num_mid = x #那么z>x>y,那么x就是中间数
30 elif z < x and z > y: #如果x>z>y
31 num_mid = z #那么中间数就是z
32 else: #第三种情况就是 x>y>z,中间数是y
33 num_mid = y
34 else: # 与上述类似
35 if z < x:
36 num_mid = x
37 elif z > x and z < y:
38 num_mid = z
39 else:
40 num_mid = y
41
42 print('输入的三个数字按从小到大排列分别为%d,%d,%d'%(num_min,num_mid,num_max)) #格式化按由小到大输出三个数
















