Java 4.9上机练习
1.编写一个简单程序,要求数组长度为5,静态赋值10,20,30,40,50,在控制台输出该数组的值。
public class blue { public static void main(String[] args) { // TODO 自动生成的方法存根 int[] arr={10,20,30,40,50}; for(int i=0;i<arr.length;i++) System.out.println(arr[i]); } }
2.编写一个简单程序,要求数组长度为5,动态赋值10,20,30,40,50,在控制台输出该数组的值。
public class blue { public static void main(String[] args) { // TODO 自动生成的方法存根 int[] arr1=new int[5]; int a=1; for(int i=0;i<arr1.length;i++) { arr1[i]=a*10; System.out.println(arr1[i]); a++; } } }
3.编写一个简单程序,定义整型数组,里面的元素是{23,45,22,33,56},求数组元素的和、平均值
public class blue { public static void main(String[] args) { // TODO 自动生成的方法存根 int[] arr2= {23,45,22,33,56}; int sum=0,p=0; for(int i=0;i<arr2.length;i++) { sum+=arr2[i]; p=sum/arr2.length; } System.out.println("数组元素和为"+sum+" "+"数组元素的平均值为"+p); } }
4.在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。
public class blue { public static void main(String[] args) { // TODO 自动生成的方法存根 int[] a= {18,25,7,36,13,2,89,63}; int max=a[0]; for(int i=0;i<a.length;i++) { if(max<a[i]) max=a[i]; } System.out.println("数组中最大数为"+max); for(int j=0;j<a.length;j++) { if(max==a[j]) System.out.println("数组中最大数的下标为"+j); } } }
5. 将一个数组中的元素逆序存放(知识点:数组遍历、数组元素访问)
public class blue { public static void main(String[] args) { // TODO 自动生成的方法存根 int[] a= {18,25,7,36,13,2,89,63}; for(int i=a.length-1;i>=0;i--) System.out.println(a[i]); } }
6、有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。(附加题)
import java.util.*; public class blue { public static void main(String[] args) { // TODO 自动生成的方法存根 int[] a = {18,25,7,36,13,2,89,63}; int[] b = new int[a.length+1]; Scanner input=new Scanner(System.in); System.out.println("输入一个数c"); int c=input.nextInt(); Arrays.sort(a); for (int i = 0; i < a.length; i++) { if (a[i] > c) { b[i] = c; for (i = i + 1; i < b.length; i++) { b[i] = a[i - 1]; } } else { b[i] = a[i]; } } for (int i = 0; i<a.length+1; i++) { System.out.print(+b[i]); System.out.print(" "); } } }