1、一、 【必做题】1 编写一个简单程序,要求数组长度为 5,分别赋值 10,20,30 ,40,50 ,在控制台输出该数组的值。/*例 5-1*数组使用范例*/public class ArrayDemopublic static void main(String args)int buffer=new int5;buffer0=10;buffer1=20;buffer2=30;buffer3=40;buffer4=50;for(int i=0;i amax) max = i; /遍历数组, 如果大于amax ,就把他的数组下标赋给max if (ai =0; j=j-1) System.out
2、.print(aj+“ “);9. 将一个数组中的重复元素保留一个其他的清零。public class Answer public static void main(String args) int a = 1, 2, 2, 3, 4, 5, 6, 4, 7 ,2 ,10;for (int i = 0;i i; j-) / 如果dataj小于dataj - 1,交换 if (dataj max)max = ai;add = add+ai;System.out.println(“最小值:“ +min);System.out.println(“最大值:“ +max);System.out.prin
3、tln(“平均值: “+add/a.length);二、 【选做题】1利用随机数生成一个整数数组,数组共有 10 个元素,每个元素的值都在 0-9 之间,打印该数组并求平均数,多运行几次,看每次运行的结果是否相同。public class RandomArrpublic static void main(String args)int arr = new int 10; /声明一个10个元素的int型数组for(int i = 0; i =1for(int i=0;i akj + 1)int temp = akj;akj = akj + 1;akj + 1 = temp;4求一个 3*3 矩阵
4、对角线元素之和public class Answer public static void main(String args) int a = 1,2,3,4,5,6,7,8,9;int sum1 = 0;int sum2 = 0;for (int i = 0;i a.length;i +)for (int j = 0;j ai.length;j +)if (i = j)sum1 += aij;if (i + j = 2)sum2 += aij;System.out.println(“对角线1 :“ + sum1 + “,对角线2:“ + sum2);5、有一分数序列:2/1 ,3/2,5/3
5、,8/5 ,13/8 ,21/13. 求出这个数列的前 20 项之和。 (不使用数学公式,要求用递归)double first=2,second=1,temp=0,sum=0;for(int i=0;i20;i+)temp = first;System.out.print(first+“/“+second+“+“);sum=sum+first/second;first=first+second;second = temp;System.out.print(“=“+sum);6有 n 个整数,使其前面各数顺序向后移 m 个位置,最后 m 个数变成最前面的 m 个数。例如 1 2 3 4 5 6
6、7 移动 4 个就变成 4 5 6 7 1 2 3 /* param args*/public static final int N =7;public static void main(String args) int a = new intN;Scanner s = new Scanner(System.in);System.out.println(“please input array a, ten numbers:“);for(int i=0; ia.length; i+) ai = s.nextInt();System.out.println(“please input m , on
7、e number:“);int m = s.nextInt();int b = new intN;for(int i=N-m,j=0; iN;i+,j+) bj = ai;for(int i=0; ib.length; i+) System.out.print(bi + “ “);for(int i=0,j=m; jN; i+,j+) bj = ai;for(int i=0; ib.length; i+) System.out.print(bi + “ “);6 有2 个多维数组分别是 2 3 4 和 1 5 2 8 4 6 8 5 9 10 -3 2 7 -5 -18按照如下方式进行运算。生
8、成一个 2 行 4 列的数组。此数组的第 1 行 1 列是 2*1+3*5+4*2第 1 行 2 列是 2*5+3*9+4*7 第 2 行 1 列是 4*1+6*5+8*2 依次类推。package com.neusoft.javaTest;public class Array2 /* param args*/public static void main(String args) int a = 2, 3, 4 , 4, 6, 8 ;int b = 1, 5, 2, 8 , 5, 9, 10, -3 , 2, 7, -5, -18 ;for(int k=0;ka.length;k+)for(int i=0;ib0.length;i+)int num = 0;for(int j=0;jb.length;j+)num += akj*bji;System.out.print(num+“ “);System.out.println(“);