编写一个程序,要求能够输入任意多个数字,然后输出这些数字中的最大值和最小值

有请各位高手帮我编出这个题目来,小弟想到头都肿了,都想不出怎么任意定义多个数字!!
这个思路我也知道,但是重点是如何输入任意多个数字,也就是说输入的数不确定,总不能随便输一个数,到后来却发现太多或太少了吧?

1、使用C++实现:
用c++ vector容器,可以随意输入多个数字,每次push_back即可

或者看这个代码
/****************************************************************
** min_max.cpp
** 对用户输入的任意一组序列,计算其最大值和最小值
** 并不是用vector这类容器存储整个序列中的数据
** 思想:定义min,max,用输入序列的第一个元素初始化
** 若输入流中元素小于min,则用该值替换min,若大于max,则替换掉 max
** 重复输入
***************************************************************/
#include <iostream>
#include <cstdlib>
using std::cin;
using std::cout;
using std::endl;

int main()
{
int v = 0;
int min, max;

cout << "Enter numbers: ";

cin >> v;
min = max = v;

while(cin >> v)
{
if(v < min) min = v;
else if(v > max) max = v;
else;
}
cout << "min = " << min << ", max = " << max <<endl;

system("pause");
return 0;
}
2、使用C语言实现:
#include<stdio.h>
#include<stdlib.h>

int main( )
{
int val;
int min, max;

scanf("%d", &val);
min = max = val;

//CTRL + Z 结束输入
while (scanf("%d", &val) != EOF)
{
if (val > max)
{
max = val;
}
else if (val < min)
{
min = val;
}
}
printf("max = %d;\nmin = %d;\n", max, min);

system("pause");
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-04-28
用c++ vector容器,可以随意输入多个数字,每次push_back即可

或者看这个代码
/****************************************************************
** min_max.cpp
** 对用户输入的任意一组序列,计算其最大值和最小值
** 并不是用vector这类容器存储整个序列中的数据
** 思想:定义min,max,用输入序列的第一个元素初始化
** 若输入流中元素小于min,则用该值替换min,若大于max,则替换掉 max
** 重复输入
***************************************************************/
#include <iostream>
#include <cstdlib>
using std::cin;
using std::cout;
using std::endl;

int main()
{
int v = 0;
int min, max;

cout << "Enter numbers: ";

cin >> v;
min = max = v;

while(cin >> v)
{
if(v < min) min = v;
else if(v > max) max = v;
else;
}
cout << "min = " << min << ", max = " << max <<endl;

system("pause");
return 0;
}本回答被提问者采纳
第2个回答  2018-08-30

使用python实现:

str_nums = input("请输入要比较大小的数值(用空格隔开):")
str_nums_list = str_nums.split() #生成1个数字字符列表
nums_list = []                   
for str_num in str_nums_list:    #从数字字符列表中取出数字字符
    num = int(str_num)           #将数字字符转换为数值
    nums_list.append(num)        #将数值加入列表nums_list
nums_list.sort()                 #从小到大排序
print(nums_list)                 #可以显示1下排序后的列表
print(nums_list[0])              #显示最大值
print(nums_list[-1])             #显示最小值

print("=====另一方法=====")

str_nums = input("请输入要比较大小的数值(用空格隔开):")
str_nums_list = str_nums.split() #生成1个数字字符列表
nums_list = [int(num) for num in str_nums_list] #将数字字符串转换为数字存入列表nums_list
nums_list.sort() #从小到大排序
print(nums_list)
print(nums_list[0])
print(nums_list[-1])

第3个回答  2009-04-28
声明一个数组,里面只有两个元素,头两个数字可以自定义为0和1,在键盘输入一个数时就响应比较事件,比元素1小就替换掉元素1,比元素2大就替换掉元素2,最后输出在数组内剩下的两个数,一个是输入的最小,一个是最大。
补充:
可能我不太理解你的意思吧,因为最后只输出最大和最小的值,所以数组只有两个元素,用户可以根据自己的需要输入数字,做个循环输入。我的理解可能有误,见谅

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网