max = 0 min = 0 while True: i = int(input('请输入一个整数,输入0结束: ')) if i > max: max = i if i < min: min = i if i == 0: break print('最大值为: ',max) print('最小值为: ',min)
你这min值默认为0是不对的,如果输入的都是大于0的值,你这min最后还是0,显然不对。应该默认一个很大的值(保证输入的的整数中有比它小的,比如 min = 0xFFFFFFFF
因为你这么写的话,会按顺序先执行前面两个if判断,最后才判断输入是否为0。你输入0的时候满足“i<min”的条件,所以把0赋给了i,然后又满足“i==0的条件”,所以退出了循环。如果你非要这么写,就把“if i == 0"的判断放在最前面。