python输入数据得最大最小值(两种方法)

方法一(常规):

在这里插入图片描述

代码:

count = int(input('输入数据个数:\n'))
a = 1
while a <= count:
    num = int(input('请输入第{}个数:'.format(a))) #字符串中的方法
    if a == 1:              #这句一定会执行,而且只执行一次,目的就是让你输入的第一个数作为根据与之后的数比较
        max = min = num     #第二个及以后的数都会走else,

   else:                   #第一次走else时,比较中的min和max都是你第一次输入的数,以后走else就不一定了
        if num < min:
            min = num
        elif num > max:
            max = num
    a += 1
print('最大数据是:', max)
print('最小数据是:', min)

方法二:列表实现
在这里插入图片描述

代码:

#思路:将用户输入的每个数据存入一个列表,然后调用min与max函数且以列表为参就可以了
count = int(input('请输入数据个数:\n'))
list = []
for i in range(1, count+1):   #注意range取值范围
    list.append(int(input('请输入第{}个值:'.format(i))))

print(min(list))
print(max(list))
  • 27
    点赞
  • 83
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 可以使用一个数组来存储这10个整数,然后通过遍历数组来找到最大值和最小值,并记录它们所在的下标位置。 具体实现步骤如下: 1. 定义一个长度为10的整型数组,用于存储输入的10个整数。 2. 通过循环语句,从键盘输入10个整数,并将它们存储到数组中。 3. 定义两个变量max和min,分别用于记录最大值和最小值,初始值分别为数组的第一个元素。 4. 定义两个变量maxIndex和minIndex,分别用于记录最大值和最小值所在的下标位置,初始值分别为。 5. 通过遍历数组,比较每个元素与max和min的大小关系,如果大于max,则更新max和maxIndex的值;如果小于min,则更新min和minIndex的值。 6. 输出最大值、最小值及其所在元素的下标位置。 下面是示例代码: ```python # 定义一个长度为10的整型数组 arr = [] * 10 # 从键盘输入10个整数,并将它们存储到数组中 for i in range(10): arr[i] = int(input("请输入第%d个整数:" % (i+1))) # 定义最大值和最小值的初始值 max = arr[] min = arr[] # 定义最大值和最小值所在的下标位置的初始值 maxIndex = minIndex = # 遍历数组,找到最大值和最小值及其所在的下标位置 for i in range(1, 10): if arr[i] > max: max = arr[i] maxIndex = i if arr[i] < min: min = arr[i] minIndex = i # 输出最大值、最小值及其所在元素的下标位置 print("最大值为:%d,所在下标位置为:%d" % (max, maxIndex)) print("最小值为:%d,所在下标位置为:%d" % (min, minIndex)) ``` ### 回答2: 题目要求从键盘输入10个整数,然后计算出它们的最大值、最小值和对应的元素下标。这一题可以用两种方法来实现,一种是手动输入,一种是使用随机数生成器。 方法一:手动输入 首先需要定义一个数组,用来存储输入的值。然后使用for循环和scanf函数来逐个输入10个整数。接下来,定义变量max和min分别表示最大值和最小值,并设置初始值为数组的第一个元素,下标从0开始记录。然后遍历数组,如果当前元素大于max,则将max更新为当前元素,并记录下标;如果当前元素小于min,则将min更新为当前元素,并记录下标。最后输出max、min和对应的下标即可。 方法二:使用随机数生成器 如果不想手动输入数据,可以使用随机数生成器来生成10个随机整数。需要先使用srand函数初始化随机数生成器种子,然后使用rand函数生成10个随机整数,并将它们保存到数组中。其余的步骤与方法一相同,即遍历数组,计算最大值和最小值,并记录下标,最后输出结果。 下面给出方法一的示例程序: ```c #include <stdio.h> int main() { int arr[10], max, min, idx_max, idx_min, i; printf("请输入10个整数:\n"); for (i = 0; i < 10; i++) { scanf("%d", &arr[i]); } max = min = arr[0]; idx_max = idx_min = 0; for (i = 1; i < 10; i++) { if (arr[i] > max) { max = arr[i]; idx_max = i; } if (arr[i] < min) { min = arr[i]; idx_min = i; } } printf("最大值:%d,下标:%d\n", max, idx_max); printf("最小值:%d,下标:%d\n", min, idx_min); return 0; } ``` 使用示例: ``` 请输入10个整数: 1 2 3 4 5 6 7 8 9 10 最大值:10,下标:9 最小值:1,下标:0 ``` 以上程序中,输入了10个整数1~10,程序计算出最大值为10,位于数组下标9的位置,最小值为1,位于数组下标0的位置。 ### 回答3: 假设我们的程序是用C语言编写的,那么我们的思路应该是先定义一个包含10个整数的数组,然后通过循环语句依次读入这10个整数。在读入的同时,我们可以使用if语句来分别记录该数组中的最大值和最小值,以及它们所在的下标位置。具体的程序代码如下: ``` #include <stdio.h> int main() { int arr[10], max, min, maxi, mini; int i; //读入10个整数 for(i = 0; i < 10; i++) { printf("请输入第%d个整数:", i+1); scanf("%d", &arr[i]); if(i == 0) //初始化最大值和最小值 { max = min = arr[i]; maxi = mini = i; } else //更新最大值和最小值 { if(arr[i] > max) { max = arr[i]; maxi = i; } if(arr[i] < min) { min = arr[i]; mini = i; } } } printf("最大值:%d,所在元素的下标位置:%d\n", max, maxi); printf("最小值:%d,所在元素的下标位置:%d\n", min, mini); return 0; } ``` 在这个程序中,我们使用一个循环语句for来逐一读入10个整数,并使用一个if语句来判断该整数是否是当前数组中的最大值或最小值。如果是最大值,我们就用变量max来记录它,并将变量maxi设置为当前元素的下标位置。如果是最小值,我们同样用变量min来记录它,并将变量mini设置为当前元素的下标位置。注意,在读入第一个整数时,我们需要初始化变量max和min的值。 最后,我们使用printf函数来输出结果,以分别显示最大值和最小值以及它们所在的下标位置。 这样,我们就完成了题目要求的程序,它能够方便地计算任意输入10个整数的最大值和最小值,并显示它们所在的下标位置,为我们的工作和学习提供了便利。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值