Java习题——数组(二)

1. 将一个给定的整型数组转置输出,

例如: 源数组,1 2 3 4 5 6

转置之后的数组,6 5 4 3 2 1

//1. 将一个给定的整型数组转置输出,
//	例如:	源数组,1 2 3 4 5 6
//			转置之后的数组,6 5 4 3 2 1
package cn.edu.nefu;

public class Test01 {
	public static void main(String[] args) {
		int [] arr = {1,2,3,4,5,6};
		int [] arr1 = new int [arr.length];
		for(int i=0;i

2.静态初始化一维数组{10,20,11,35,6,89},进行冒泡排序

//2.静态初始化一维数组{10,20,11,35,6,89},进行冒泡排序
package cn.edu.nefu;

public class Test02 {
	public static void main(String[] args) {
		int [] arr = {10,20,11,35,6,89};
		for(int i=0;iarr[j+1]){
					temp = arr[j];
					arr[j] = arr[j+1];
					arr[j+1] = temp;
				}
			}
		}
		for(int i=0;i

3.静态初始化二维数组 {{1},{2,3},{4,5,6}},输出每个元素的值

//3.静态初始化二维数组 {{1},{2,3},{4,5,6}},输出每个元素的值
package cn.edu.nefu;

public class Test03 {
	public static void main(String[] args) {
		int [][] arr = {{1},{2,3},{4,5,6}};
		for(int i=0;i

4、 现在有如下的一个数组:

int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5} ;

要求将以上数组中值为0的项去掉,将不为0的值存入一个新的数组,生成的新数组为:

int newArr[]={1,3,4,5,6,6,5,4,7,6,7,5} ;

思路:生活中的问题解决 = 程序中的解决;

1、 确定出不为0的个数,这样可以开辟新数组;

2、 从旧的数组之中,取出内容,并将其赋给新开辟的数组;

/*4、	现在有如下的一个数组:
		int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5} ;
	要求将以上数组中值为0的项去掉,将不为0的值存入一个新的数组,生成的新数组为:
		int newArr[]={1,3,4,5,6,6,5,4,7,6,7,5} ;
思路:生活中的问题解决 = 程序中的解决;
	1、	确定出不为0的个数,这样可以开辟新数组;
	2、	从旧的数组之中,取出内容,并将其赋给新开辟的数组;*/
package cn.edu.nefu;

public class Test04 {
	public static void main(String[] args) {
		int oldArray [] = {1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5} ;
		int sum = 0;
		for(int i=0;i

5、 现在给出两个数组:

· 数组A:{1,7,9,11,13,15,17,19}

· 数组b:{2,4,6,8,10}

      两个数组合并为数组c,按升序排列。

主要的目的是熟悉这两个操作的方法,数组扩大,必须要将原始数组的内容拷贝进去。

/*5、	现在给出两个数组:
	· 数组A:{1,7,9,11,13,15,17,19}
	· 数组b:{2,4,6,8,10}
      两个数组合并为数组c,按升序排列。
	主要的目的是熟悉这两个操作的方法,数组扩大,必须要将原始数组的内容拷贝进去。*/
package cn.edu.nefu;

import java.util.Arrays;

public class Test05 {
	public static void main(String[] args) {
		int [] A = {1,7,9,11,13,15,17,19};
		int [] B = {2,4,6,8,10};
		int [] C = Arrays.copyOf(A,A.length+B.length);
		System.arraycopy(B, 0, C, A.length, B.length);
		Arrays.sort(C);
		for(int i=0;i

6.静态初始化二维数组 {{11,15,32,21},{2,3},{4,5,6}},输出每个元素的值,并从小到大排序。

//6.静态初始化二维数组 {{11,15,32,21},{2,3},{4,5,6}},输出每个元素的值,并从小到大排序。
package cn.edu.nefu;

import java.util.Arrays;

public class Test06 {
	public static void main(String[] args) {
		int [][] arr = {{11,15,32,21},{2,3},{4,5,6}};
		int sum=0;
		for(int i=0;i

7.. *输出杨辉三角
杨辉三角如下:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
……
杨辉三角的特点:
1. 第i 行有i 个元素
2. 每一行的第一个元素和最后一个元素都为1
3. 除了1 之外,每个元素的值,都等于上一行同位置的元素以及前一个元素的和。
例如:
1 4 6 4 1 的下一行
1 a1 a2 a3 a4 1
a1 = 4 + 1 = 5
a2 = 6 + 4 = 10
a3 = 4 + 6 = 10
a4 = 1 + 4 = 5
依次类推。
要求:读入一个整数n,输出杨辉三角的前n 行

package cn.edu.nefu;

import java.util.Scanner;

public class Test07 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入一个整数n:");
		int n = sc.nextInt();
		int [][] arr = new int [n][n];
		for(int i=0;i

8. *数组的插入和删除

   定义一个长度为10的数组,通过控制台的输入5个数,

     1.向数组中指定的位置中插入一个新元素,

     2.删除指定位置的元素

package cn.edu.nefu;

import java.util.Scanner;

public class Test08 {
	public static void main(String[] args) {
		int arr [] = new int [10];
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入5个数:");
		for(int i=0;i<5;i++){
			arr[i] = sc.nextInt(); //通过控制台的输入5个数
		}
		for(int i=0;i

 

你可能感兴趣的:(Java习题——数组(二))