编写一个程序,要求能够输入任意多个数字,然后输出这些数字中的最大值和最小值
有请各位高手帮我编出这个题目来,小弟想到头都肿了,都想不出怎么任意定义多个数字!!这个思路我也知道,但是重点是如何输入任意多个数字,也就是说输入的数不确定,总不能随便输一...
有请各位高手帮我编出这个题目来,小弟想到头都肿了,都想不出怎么任意定义多个数字!!
这个思路我也知道,但是重点是如何输入任意多个数字,也就是说输入的数不确定,总不能随便输一个数,到后来却发现太多或太少了吧? 展开
这个思路我也知道,但是重点是如何输入任意多个数字,也就是说输入的数不确定,总不能随便输一个数,到后来却发现太多或太少了吧? 展开
4个回答
2015-12-30 · 知道合伙人软件行家
关注
展开全部
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;
}
用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;
}
展开全部
用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;
}
或者看这个代码
/****************************************************************
** 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;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
使用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])
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
声明一个数组,里面只有两个元素,头两个数字可以自定义为0和1,在键盘输入一个数时就响应比较事件,比元素1小就替换掉元素1,比元素2大就替换掉元素2,最后输出在数组内剩下的两个数,一个是输入的最小,一个是最大。
补充:
可能我不太理解你的意思吧,因为最后只输出最大和最小的值,所以数组只有两个元素,用户可以根据自己的需要输入数字,做个循环输入。我的理解可能有误,见谅
补充:
可能我不太理解你的意思吧,因为最后只输出最大和最小的值,所以数组只有两个元素,用户可以根据自己的需要输入数字,做个循环输入。我的理解可能有误,见谅
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询