第六周上机作业

1.编写一个简单程序,要求数组长度为5,静态赋值10,20,30,40,50,在控制台输出该数组的值。

package text;

public class tx {

	public static void main(String[] args) {
		int[] a={10,20,30,40,50};
		for(int i=0;i<5;i++){
			System.out.println(a[i]);
		}
	}
}		

2.编写一个简单程序,要求数组长度为5,动态赋值10,20,30,40,50,在控制台输出该数组的值。

package text;

public class tx {

	public static void main(String[] args) {
		int[] a=new int[5];
		a[0]=10;
		a[1]=20;
		a[2]=30;
		a[3]=40;
		a[4]=50;
		for(int i=0;i<5;i++){
			System.out.println(a[i]);
		}
	}
}	

3.编写一个简单程序,定义整型数组,里面的元素是{23,45,22,33,56},求数组元素的和、平均值 

package text;

public class tx {

	public static void main(String[] args) {
		int[] a=new int[]{23,45,22,33,56};
		double sum=0;
		for(int i=0;i<5;i++){
			sum+=a[i];	
		}
		System.out.println("和为"+sum+"平均值为"+sum/5);
	}
}		

4.在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。

package text;

public class tx {

	public static void main(String[] args) {
		int[] a=new int[]{18,25,7,36,13,2,89,63};
		int max=0,x=0;
		for(int i=0;i<a.length-1;i++){
			if(max<a[i]){
				max=a[i];
				x=i;
			}
		}
		System.out.println("最大数为"+max+"下标为"+x);
	}
}	

5. 将一个数组中的元素逆序存放(知识点:数组遍历、数组元素访问)

package text;

public class tx {

	public static void main(String[] args) {
		int[] a=new int[]{18,25,7,36};
		int x;
		for(int i=0;i<a.length/2;i++){
			x=a[i];
			a[i]=a[a.length-1-i];
			a[a.length-1-i]=x;
		}
		for(int i=0;i<a.length;i++){
			System.out.println(a[i]);
		}
		
	}
}

 6、有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。(附加题)

package text;

import java.util.Scanner;

public class tx {

	public static void main(String[] args) {
		int[] a=new int[]{1,2,3,4,5,6,7,8,9,10};
		System.out.println("定义的数组为:");
		for(int i=0;i<a.length;i++){
			System.out.print(a[i]+"");
			if(i==a.length-1){
				System.out.println();
			}
		}
		System.out.println("请输入要插入的数:");
		int num=0;
		Scanner sc=new Scanner(System.in);
		num=sc.nextInt();
		int[] b=new int[a.length+1];
		if(num<=a[0]){
			b[0]=num;
			for(int i=1;i<b.length;i++){
				b[i]=a[i-1];
			}
		}
		else if(num>=a[a.length-1]){
			b[b.length-1]=num;
			for(int i=0;i<b.length-1;i++){
				b[i]=a[i];
			}
		}
		else{
			for(int i=0;i<a.length-1;i++){
				if(num>=a[i]&&num<a[i+1]){
					for(int k=0;k<=i;k++){
						b[k]=a[k];
					}
					b[i+1]=num;
					for(int m=i+2;m<b.length;m++){
						b[m]=a[m-1];
					}
				}
			}
		}
		System.out.println("现在数组各个元素为:");
		for(int j=0;j<b.length;j++){
			System.out.println(b[j]);
		}
	}
}		

  

原文地址:https://www.cnblogs.com/komorebi-jane/p/12665885.html