2019-1-3作业

1、数组有何作用?

  数组是一个变量,存储相同数据类型的一组数据,在内存空间划出一串连续的空间。可以更加方便的处理相同数据类型的数据。

2、使用数组的步骤?

  1、声明数组:如:int[] a;

  2、分配空间:如:a = new int[5];

  3、赋值   如:a[0] = 8;

  4、处理数据:如:a[0] = a[0] * 10;

3、如何遍历数组?

package com.java1_3;

public class BianLiShuZu {
	public static void main(String[] args) {
		int[] a = {5,96,8,7,4,5,9};
		for(int i=0;i<a.length;i++) {
			System.out.print(a[i]+" ");//普通for循环实现
		}
		System.out.println();
		System.out.println("----------------");
		for(int b:a) {
			System.out.print(b+" ");//使用增强for循环实现
		}
	}
}

  结果:

4、简述最大值的实现思路是怎么样?

  先设置一个最大数,把除非之外的所有数都进行比较,如果比其它数小,其它数当最大数继续作比较,直到所有数都有比较过;

作业:

1、在一个长度为6的数组中,数组中最后一个为空,插入一个数,并降序输出。

  方法一:找到这个数在数组中位置插入进去

package com.java1_3;

import java.util.Scanner;

public class ChaRunShuJu {
	public static void main(String[] args) {
		Scanner cxj = new Scanner(System.in);
		int[] a = new int[6];
		a[0] = 56;
		a[1] = 78;
		a[2] = 90;
		a[3] = 12;
		a[4] = 34;
	
		//先对数组中的数据进行降序排列
		System.out.println("排序之前的数据顺序是:");
		for(int i=0;i<a.length-1;i++) {
			System.out.print(a[i]+" ");
		}
		for(int i=0;i<a.length-1;i++) {
			for(int j=0;j<a.length-1-i;j++) {
				if(a[j]<a[j+1]) {
					int temp = a[j];
					a[j] = a[j+1];
					a[j+1] = temp;
				}
			}
		}
		System.out.println();
		System.out.println("排序之后的数据顺序是:");
		for(int i=0;i<a.length-1;i++) {
			System.out.print(a[i]+" ");
		}
		
		//插入一个数到数组,并以降序输出
		//首先确定要插入的数在数组中应该插在哪个位置,记录下标
		System.out.println();
		System.out.println("请输入要插入的数:");
		int shu = cxj.nextInt();
		int index = a.length-1;
		for(int i=0;i<a.length-1;i++) {
			if(a[i]<shu) {
				index = i;
				break;
			}
		}

		//接下去将这个位置的数和后面所有的数全部往后移动一位
		for(int j=a.length-1;j>index;j--) {
			a[j] = a[j-1];
		}
		//将输入的值赋给下标为index的数组
		a[index] = shu;
		//遍历输出插入后的数组
		System.out.println("------------------");
		System.out.println("插入后的数据顺序是:");
		for(int i=0;i<a.length;i++) {
			System.out.print(a[i]+" ");
		}
	}
}

  结果示例:

  方法二,直接将要插入的数放在最后一个位置,再对数组进行降序排列

package com.java1_3;

import java.util.Scanner;

public class ChaRunShuJu2 {
	public static void main(String[] args) {
		Scanner cxj = new Scanner(System.in);
		int[] a = new int[6];
		a[0] = 56;
		a[1] = 78;
		a[2] = 90;
		a[3] = 12;
		a[4] = 34;
		
		System.out.println("插入之前的数据是:");
		for(int i=0;i<a.length;i++) {
			System.out.print(a[i]+" ");
		}
		
		System.out.println();
		System.out.println("请输入要插入的数:");
		int shu = cxj.nextInt();
		
		a[5] = shu;
		//对数组中的数据进行降序排列
		
		for(int i=0;i<a.length-1;i++) {
			for(int j=0;j<a.length-1-i;j++) {
				if(a[j]<a[j+1]) {
					int temp = a[j];
					a[j] = a[j+1];
					a[j+1] = temp;
				}
			}
		}
		System.out.println();
		System.out.println("插入后的数据情况是:");
		for(int i=0;i<a.length;i++) {
			System.out.print(a[i]+" ");
		}
	}
}

  结果示例:

猜你喜欢

转载自www.cnblogs.com/chenxj/p/10222270.html