1.编写一个简单程序,要求数组长度为5,静态赋值10,20,30,40,50,在控制台输出该数组的值。
public class first { public static void main(String[] args) { int[] arr={10,20,30,40,50}; for (int i : arr) { System.out.println(i); } } }
2.编写一个简单程序,要求数组长度为5,动态赋值10,20,30,40,50,在控制台输出该数组的值。
import java.util.Scanner; public class first { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int[] arr=new int[5]; for (int i = 0; i < arr.length; i++) { arr[i] = sc.nextInt(); } for (int a : arr) { System.out.println(a); } } }
3.编写一个简单程序,定义整型数组,里面的元素是{23,45,22,33,56},求数组元素的和、平均值
public class first { public static void main(String[] args) { int[] arr={23,45,22,33,56}; double sum=0; for (int i : arr) { sum+=i; } double pj=sum/5; System.out.println("数组的和为"+sum+"平均值为"+sum/arr.length); } }
4.在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。
public class first { public static void main(String[] args) { int[] arr={18,25,7,36,13,2,89,63}; int max=arr[0]; int index = 0; for (int i = 0; i < arr.length-1; i++) { if (max]){ max=arr[i+1]; index=i+1; } } System.out.println("最大值为;"+max+"下标为"+index); } }
5. 在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。(知识点:数组遍历、数组元素访问)
public class first { public static void main(String[] args) { int[] arr={23,45,22,33,56}; int temp=0; for (int i = 0; i < arr.length/2; i++) { temp=arr[i]; arr[i]=arr[arr.length-1-i]; arr[arr.length-1-i]=temp; } for (int i : arr) { System.out.println(i); } } }
6、有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。(附加题)
public class first { public static void main(String[] args) { int[] arr = {22, 33, 44, 55, 66, 77}; int[] newArr = new int[arr.length + 1]; int j = 32; for (int i = 0; i < arr.length; i++) { if (arr[i] > j) { newArr[i] = j; for (i = i + 1; i < newArr.length; i++) { newArr[i] = arr[i - 1]; } } else { newArr[i] = arr[i]; } } for (int i = 0; i < 5; i++) { System.out.println(newArr[i]); } } }