小弟求助一题JAVA题目,2.连续输入一组数字,求出其中最大值和最小值。(要用while),谢谢大家~

小弟求助一题JAVA题目,2.连续输入一组数字,求出其中最大值和最小值。(要用while),谢谢大家~

import java.util.Scanner;
public class GetMaxAndMin {
public static void main(String[] args) {
System.out.print("请输入要比较的数字的个数:");
Scanner reader=new Scanner(System.in);
int number=reader.nextInt();
System.out.println("请输入这组数字,用空格隔开:");
int max=reader.nextInt();
int min=max;
int i=1;
while(i<number){
int temp=reader.nextInt();
if(temp>max){
max=temp;
}
if(temp<min){
min=temp;
}
i++;
}
System.out.println("最大值为:"+max);
System.out.println("最小值为:"+min);
}
}
运行结果:
请输入要比较的数字的个数:4
请输入这组数字,用空格隔开:
13 83 9292 234
最大值为:9292
最小值为:13
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-28
int a[]={1,2,5,4,7};
int i=0,j=0;
while(j<a.length){
j++;

while(i<a.length){
if (a[i]<a[i+1]){
a[i]=a[i+1];
i++;
}

}
}本回答被网友采纳
第2个回答  2012-11-28
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int num[] = new int[100];
int i = 1;
boolean flag = true;
while(flag){
System.out.println("请输入第"+i+"个数:");
num[i] = scanner.nextInt();
System.out.println("是否继续?Y/N?");
String p = scanner.next();
if(p.equals("N")){
flag = false;
}
}
Arrays.sort(num); //对数组进行排序
System.out.println("最小数为:"+num[0]+";最大数为:"+num[num.length-1]);
}
第3个回答  2012-11-28
import java.util.Random;

public class RandomNumber {

public void maxMin(int[] nums)
{
nums = new int[10];
int max = 0;
int least = 0;

Random rand = new Random();

for(int i=0;i<nums.length;i++)
{
nums[i]=rand.nextInt(1000)+1;

}

//最大值
max = nums[0];
for(int i=0;i<nums.length;i++)
{
if(nums[i]>max)
{
max = nums[i];
}
}

//最小值
least = nums[0];
for(int i=1;i<nums.length;i++)
{
if(nums[i]<least)
{
least = nums[i];
}
}

System.out.println("随机数为:");
for(int j=0;j<10;j++){

System.out.print(nums[j]);
System.out.print(",");
}
System.out.println();
System.out.println("最大的数是:" +max);
System.out.println("最小的数是: "+least);

}

public static void main(String[] args){
RandomNumber randomNumber = new RandomNumber();
int[] nums = new int[10];

Random rand = new Random();

for(int i=0;i<nums.length;i++)
{
//随机产生的10个数怎么保存到一个数组,在你实际中,你可以自己处理成输入一组数字
nums[i]=rand.nextInt(1000)+1;

}
randomNumber.maxMin(nums);
}
}

别人的东西给人参考一下,自己改一下,随机产生10个1~1000之间的整数,放在一个数组中,定义方法maxMin(),求出其中的最大值和最小值。
第4个回答  2012-11-28
使用java.util.Scanner sc=new java.util.Scanner(System.in);double d=sc.nextDouble();进行输入。
使用 java.util.ArrayList<Double> list=java.util.ArrayList<Double>(); list.add(new Double(d)); 进行存储。
结束方法可以把输入放到try-catch模块中,当输入的为非数字就会结束输入;
至于查找大小,估计你也会了,此处省略
第5个回答  2012-11-28
JDK1.4的代码:
InputStreamReader in = new InputStreamReader(System.in);
BufferedReader buffReader = new BufferedReader(in);
System.out.println("请输入一组数字!");

String inStr = buffReader.readLine();
String [] str = null;
if(null != inStr){
str = inStr.split("");
}
List aslist = Arrays.asList(str);
ArrayList list = new ArrayList(aslist);
while(list.size() > 1){
String m = list.get(1).toString();
String n = list.get(0).toString();
if(m.equals("")){
list.remove(1);
}else if(n.equals("")){
list.remove(0);
}else{
int a = Integer.parseInt(m) - Integer.parseInt(n);
if(a > 0 ){
list.remove(0);
}else{
list.remove(1);
}
}
}
String s = (String)list.get(0);
System.out.println(s);
第6个回答  2012-11-28
假定将输入的数字存在数组a[N]中了
int max=a[0];
int min=a[0];
int i=1;
while(i<=N){
if(a[i]>max){
max=a[i];
}
if(a[i]<min){
min=a[i];
}
i++;
}
System.out.print("最大值:"+max+"最小值:"+min);