第七次JAVA作业

1.有10个评委打分,(去掉一个最高一个最低)求平均分。

package snippet;
import java.util.*;
public class text {
     public static void main(String[] args) {
         avg10();
         }
         public static void avg10() {
         int[] array = {89, 89, 98, 94, 78, 99, 88, 92, 90, 90};
         int index = 0, sum = 0, temp = 0, avg = 0 ;
         //找到最低分 冒泡排除,从小到大排列
         for (int i = 0; i < array.length - 1; i++) {
         for (int j = i + 1; j < array.length; j++) {
         if (array[j] < array[i]) { //如果是大于号, 将是从大到小
         temp = array[i];
         array[i] = array[j];
         array[j] = temp;
         }
         }
         }
         //求和
         while (array.length != index) {
         sum += array[index];
         index++;
         }
         do {
         sum = sum - array[0] - array[array.length-1]; //去掉最高分和最低分,
         } while (false);
         avg = sum / 8;
         System.out.println(avg);
         }

}

 

 


2.自学一下Java随机数,生成一个长度为10的随机数组(每个数的范围是0~99),排序后输出。
{45,88,72,32,}

package snippet;
import java.util.*;
public class text {

    public static void main(String[] args) {
          int[] arr = {45,88,72,32};
          System.out.println(Arrays.toString(arr));
         //  RandomArray();
          sort(arr);
          System.out.println(Arrays.toString(arr));
        }
         private static int[] RandomArray(){
          int n = new Random().nextInt(10); //获取随机n
        //  System.out.println(n);
          int[] arr =new int[10];    //随机长度的数组
          for (int i = 0; i < arr.length; i++) {
           arr[i] = new Random().nextInt(99);//数组元素取值范围
         
          }
          return arr;
         }
         
         private static void sort(int[] a){
          for (int i = 0; i < a.length; i++) {
           for (int j = a.length -1;j>i;j--) {
            if(a[j]>a[j-1]){
             int temp =a[j];
             a[j] = a[i];
             a[i] = temp;
            }
            
           }
           
          }
           }


}

 

 



3.制作彩票35选7程序。 (就是1~35随机生成7个不重复的数)

package snippet;
import java.util.*;
public class text {

public static void main(String[] args) {
List<Integer> reList = new ArrayList<Integer>();
int[] num = new int[35];// 创建一个35长度的int数组
boolean[] flag = new boolean[35];
int count = 0;
for (int i = 0; i < 35; i++)
{
num[i] = i + 1;
flag[i] = true;
}
while (count != 7) {
int k = (int) (Math.random() * 35);
if (flag[k]) {
reList.add(num[k]);
flag[k] = false;
count++;
}
}

Object[] result = reList.toArray();


System.out.print("[\t");


for (int i = 0; i < result.length; i++) {


System.out.print(result[i] + "\t");
}


System.out.print("]");


}


}

 

 


4.定义一个长度为10的int数组(如果没有特殊说明,静态赋值动态赋值都可以),统计数组中的最大值、最小值、以及奇 数和偶数的个数

package snippet;
import java.util.*;
public class text {
        public static void main(String[] args) {
                  int arr[]= {28,19,37,47,53,46,19,78,98,45};
                  int arrMax=arr[0];
                  int arrMin=arr[0];
                  int arrCountQ=0; //记录奇数个数
                  int arrCountO=0; //记录偶数个数
                  for(int i=0;i<arr.length;i++) {
                          //判断最大值
                  if(arr[i]>arrMax) {
                  arrMax=arr[i];
            }
                    //判断最小值
                  if(arr[i]<arrMin) {
                  arrMin=arr[i];
             }

                  if(arr[i]%2==0) {
                  arrCountO +=1; //判断偶数个数
                  }else {
                  arrCountQ +=1; //判断奇数个数
                }
        }
                   System.out.println("数组的最大值为:"+arrMax);
                  System.out.println("数组的最小值为:"+arrMin);
                  System.out.println("数组的偶数个数为:"+arrCountO);
                  System.out.println("数组的奇数个数为:"+arrCountQ);

                      }
}

 

posted @ 2020-04-16 11:56  Ambtion  阅读(155)  评论(0编辑  收藏  举报