第六次上机作业
1.编写一个简单程序,要求数组长度为5,静态赋值10,20,30,40,50,在控制台输出该数组的值。
import java.nio.channels.ScatteringByteChannel; import java.util.Scanner; public class a11 { public static void main(String[] args){ // TODO Auto-generated method stud int[] arr=new int[]{10,20,30,40,50}; for(int i=0;i<arr.length;i++){ System.out.print(arr[i]+" "); } } }
2.编写一个简单程序,要求数组长度为5,动态赋值10,20,30,40,50,在控制台输出该数组的值。
import java.nio.channels.ScatteringByteChannel; import java.util.Scanner; public class a11 { public static void main(String[] args){ // TODO Auto-generated method stud int ass [] = new int [5]; Scanner sc = new Scanner(System.in); for(int i=0;i<ass.length;i++){ System.out.println("请输入数字"); ass[i] = sc.nextInt(); } for(int i=0;i<ass.length;i++){ System.out.print(ass [i]+" "); } } }
3.编写一个简单程序,定义整型数组,里面的元素是{23,45,22,33,56},求数组元素的和、平均值
import java.nio.channels.ScatteringByteChannel; import java.util.Scanner; public class a11 { public static void main(String[] args){ // TODO Auto-generated method stud int a=0; double b=0; int[] arr=new int[]{23,45,22,33,56}; for(int i=0;i<arr.length;i++){ a=a+arr[i]; } b=a/5; System.out.println("该数组的和为"+a); System.out.println("该数组的平均值为"+b); } }
4.在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。(知识点:数组遍历、数组元素访问)
import java.nio.channels.ScatteringByteChannel; import java.util.Scanner; public class a11 { public static void main(String[] args){ // TODO Auto-generated method stud int[] arr=new int[]{18,25,7,36,13,2,89,63}; int max=arr[0]; for(int i=0;i<arr.length;i++){ if(max<arr[i]){ max=arr[i]; } } System.out.println("最大值是:"+max); int count=0; for(int i=0;i<arr.length;i++){ if (arr[i]==max){ System.out.println("下标值是:"+count); } count++; } } }
5. 将一个数组中的元素逆序存放(知识点:数组遍历、数组元素访问)
import java.nio.channels.ScatteringByteChannel; import java.util.Scanner; public class a11 { public static void main(String[] args){ // TODO Auto-generated method stud Scanner s=new Scanner(System.in); System.out.println("请输入数组长度 " ); int a = s.nextInt(); int b[] = new int[a]; for (int i = 0; i < b.length; i++) { System.out.println("请输入第" + (i + 1) + "个元素"); b[i] = s.nextInt(); } int temp; for (int i = 0; i < b.length - 1; i++) { for (int j = b.length - 1; j > i; j--) { if (b[j] > b[j - 1]) { temp = b[j - 1]; b[j - 1] = b[j]; b[j] = temp; } } } System.out.println(); System.out.println("逆序排出:"); for (int i = 0; i < b.length; i++) { System.out.print(b[i] + "\t"); } } }
6、有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。(附加题)