`
wing123
  • 浏览: 799958 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

数组排序,并求出最小值和最大值

阅读更多

数组排序,并求出最小值和最大值

 

//数组排序,并求出最小值和最大值

import java.io.*;
public class array2{

 //主程序
 public static void main(String[] args)
 {
     //定义数组长度
     int len=0;
     String s;//字符串用于存放键盘输入的数组长度
     try{ System.out.print("输入数组的长度:");

     //通过缓冲区的键盘读入,每行读入
     BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
     s=br.readLine();

     //将数组长度以整型显示
   len=Integer.parseInt(s);
     }
  catch(IOException e){}

     //定义一个整型数组
     int a[]=new int [len];

     //用两种方法实现键盘的输入
     for (int i=0;i<len;i++)
  {  String cc="";int c=0;

   /* 法一:利用缓冲区读入
   try{
    System.out.print("请输入第"+(i+1)+"个元素");
  BufferedReader c=new BufferedReader(new InputStreamReader(System.in));

      cc=c.readLine();
     // System.out.println(cc);
       a[i]=Integer.parseInt(cc);
            }
            */
           //法二:利用系统的read方法
        try{
     System.out.print("请输入第"+(i+1)+"个元素");
                 while(c!=13)
                  {c=System.in.read();
                  cc=cc+(char)c;
                  }
                  a[i]=Integer.parseInt(cc.trim());
    }
       catch(IOException e){}
       }
    for (int i=0;i<len;i++)
    {System.out.print("第"+(i+1)+"个元素为"+a[i]);}

    //主类分别调用对应的方法

    array2.排序(a);
    array2.最小值(a);
    array2.最大值(a);
  }

  //排序实现.注意:这里的排序方法用的是 static 修饰,即为类方法,可以用类名调用
  static void 排序(int b[])
  {
   //将数组的长度赋值给 n
   int n=b.length;
      //定义一个临时变量
      int temp;
     //利用双重循环冒泡法实现数组排序
      for (int i=0;i<n-1;i++)
       {for (int j=i+1;j<n;j++)
         {if (b[i]>b[j])
        {temp=b[j];
         b[j]=b[i];
         b[i]=temp;
         }
      }
    }
    System.out.println("\n"+"结果为"+"\n");
   //将排序的结果打印出来
    for (int i=0;i<n;i++)
        {System.out.print("第"+(i+1)+"个元素为"+b[i]+"\n");}
 }

  //求出最小值
  static void 最小值(int b[])
   {
    //将数组的长度赋值给 n
    int n=b.length;
    //定义一个变量用于最小值
    int min=b[0];
    //利用一个循环,依次比较,将较小值存放到min中
    for (int i=1;i<n;i++)
      {
  if (b[i]<min)
         {min=b[i];}
     }
    System.out.println("最小值为"+min);
 }

//求出最大值
   static void 最大值(int b[])
   {
    //将数组的长度赋值给 n
     int n=b.length;
   //定义一个变量用于最大值
     int max=b[0];
    //利用一个循环,依次比较,将较小值存放到max中
      for (int i=1;i<n;i++)
        {
          if (b[i]>max)
         {max=b[i];}
       }
     System.out.println("最大值为"+max);

 }

}

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics