4.23 第8周上机练习+作业

1、编写一个简单程序,要求数组长度为5,分别赋值10,20,30,40,50,在控制台输出该数组的值。(知识点:数组定义和创建、一维数组初始化)[必做题]?

 1 package SJW;
 2 public class work1 {
 3 
 4     /**
 5      * @param args
 6      */
 7     public static void main(String[] args) {
 8         // TODO Auto-generated method stub
 9 
10         int[] a = {10, 20, 30, 40, 50};
11       for (int i = 0; i < a.length; i++) {
12         System.out.println(a[i]);
13     }
14     }
15 
16 }

2、将一个字符数组的值(neusofteducation)拷贝到另一个字符数组中。(知识点:数组复制) [必做题]?

 1 package SJW;
 2 public class work2 {
 3 
 4     /**
 5      * @param args
 6      */
 7     public static void main(String[] args) {
 8         // TODO Auto-generated method stub
 9 
10         char[] a = {'n', 'e', 'u', 's', 'o', 'f', 't', 'e', 'd', 'u', 'c', 'a', 't', 'i', 'o', 'n'};
11         char[] b = new char[a.length];
12         for (int i = 0; i < a.length; i++) {
13             b[i]=a[i];
14             System.out.println(b[i]);
15         }
16     }
17 
18 }

 

 

 

3、给定一个有9个整数(1,6,2,3,9,4,5,7,8)的数组,先排序,然后输出排序后的数组的值。(知识点:Arrays.sort排序、冒泡排序)

 1 package SJW;
 2 
 3 public class work3 {
 4 
 5     /**
 6      * @param args
 7      */
 8     public static void main(String[] args) {
 9         // TODO Auto-generated method stub
10 
11         int a[] =new int[]{1,6,2,3,9,4,5,7,8};
12          for (int i = 0; i < a.length; i++) {
13                 for (int j = i; j < a.length; j++) {
14                     if(a[i]>a[j]){
15                         int x =a[i];
16                         a[i] =a[j];
17                         a[j] =x;
18                     }
19                 }
20             }
21             for (int i = 0; i < a.length; i++) {
22                 System.out.print(a[i]+" ");
23             }
24     }
25 
26 }

4、 输出一个double型二维数组(长度分别为5、4,值自己设定)的值。(知识点:数组定义和创建、多维数组初始化、数组遍历)

 1 package SJW;
 2 
 3 public class work4 {
 4 
 5     /**
 6      * @param args
 7      */
 8     public static void main(String[] args) {
 9         // TODO Auto-generated method stub
10 
11         double a[][] =new double[5][4];
12         for (int i = 0; i < 5; i++) {
13             for (int j = 0; j < 4; j++) {
14                 a[i][j] =i+j;
15             }
16         }
17 
18         for (int i = 0; i < 5; i++) {
19             for (int j = 0; j <4; j++) {
20                 System.out.print(a[i][j]+" ");
21             }
22             System.out.println();
23         }
24     }
25 
26 }

 

 

 


5、 在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。(知识点:数组遍历、数组元素访问) [必做题]?

 1 package SJW;
 2 
 3 public class work5 {
 4 
 5     /**
 6      * @param args
 7      */
 8     public static void main(String[] args) {
 9         // TODO Auto-generated method stub
10 
11         int a[]={18,25,7,36,13,2,89,63};
12         int max=a[0];
13         int maxidx=0;
14      for (int i = 1; i < a.length; i++) {
15          if (a[i]>max) {
16              max=a[i];
17              maxidx=i;
18          }    
19      }
20      System.out.println("最大值数是"+max+"它的下标是"+maxidx);
21     }
22 
23 }

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

 1 package SJW;
 2 
 3 import java.util.Scanner;
 4 
 5 public class work {
 6 
 7     /**
 8      * @param args
 9      */
10     public static void main(String[] args) {
11         // TODO Auto-generated method stub
12 
13          Scanner input=new Scanner(System.in);
14             int a[]=new int[8];
15             for (int i = a.length; i >0; i--) {
16                 a[i-1]=input.nextInt();
17             }
18             System.out.println("倒序输出");
19             for (int i = 0; i < a.length; i++) {
20                 System.out.print(a[i]+" ");
21             }
22     }
23 
24 }

7. 将一个数组中的重复元素保留一个其他的清零。(知识点:数组遍历、数组元素访问)

 1 package SJW;
 2 
 3 import java.util.Scanner;
 4 
 5 public class work {
 6 
 7     /**
 8      * @param args
 9      */
10     public static void main(String[] args) {
11         // TODO Auto-generated method stub
12 
13          Scanner input=new Scanner(System.in);
14          int a[]=new int[10];
15             for (int i = 0; i < a.length; i++) {
16                 a[i]=input.nextInt();
17             }
18             for (int i = 0; i < a.length-1; i++) {
19                 for (int j = i+1; j < a.length; j++) {
20                     if(a[i]==a[j]){
21                         a[j]=0;
22                     }
23                 }
24             }
25             System.out.println("新数组为");
26             for (int i = 0; i < a.length; i++) {
27                 System.out.print(a[i]+" ");
28             }
29     }
30 
31 }

8、给定一维数组{ -10,2,3,246,-100,0,5},计算出数组中的平均值、最大值、最小值。(知识点:数组遍历、数组元素访问)

 1 package SJW;
 2 
 3 import java.util.Scanner;
 4 
 5 public class work {
 6 
 7     /**
 8      * @param args
 9      */
10     public static void main(String[] args) {
11         // TODO Auto-generated method stub
12 
13          int a[]={-10,2,3,246,-100,0,5};
14             double max=0,min=0,sum=0,avg=0;
15             max=a[0];
16             min=a[0];
17             for (int i = 0; i < a.length; i++) {
18                 sum+=a[i];
19                 if (max<a[i]) {
20                     max=a[i];
21                 }
22                 if (min>a[i]) {
23                     min=a[i];
24                 }
25             }
26             avg=sum/7.0;
27             System.out.println("最大值为"+max);
28             System.out.println("最小值为"+min);
29             System.out.println("平均值为"+avg);
30     }
31 
32 }

9、使用数组存放裴波那契数列的前20项 ,并输出 1 1 2 3 5 8 13 21

 1 package SJW;
 2 
 3 import java.util.Scanner;
 4 
 5 public class work {
 6 
 7     /**
 8      * @param args
 9      */
10     public static void main(String[] args) {
11         // TODO Auto-generated method stub
12 
13         int a[]=new int[20];
14         a[0]=1;a[1]=1;
15         for(int i=2;i<a.length;i++){
16             a[i]=a[i-1]+a[i-2];
17         }
18        for (int i = 0; i < a.length; i++) {
19         System.out.print(a[i]+" ");
20     }
21     }
22 
23 }

 

 

 

10、生成一个长度为10的随机整数数组(每个数都是0-100之间),输出,排序后,再输出

 1 package SJW;
 2 import java.util.Random;
 3 public class work {
 4 
 5     /**
 6      * @param args
 7      */
 8     public static void main(String[] args) {
 9         // TODO Auto-generated method stub
10 
11         Random r=new Random();
12         int a[]=new int[10];
13         for (int i = 0; i < a.length; i++) {
14             a[i]=r.nextInt(100);
15             System.out.println(a[i]);
16         }
17         int temp=0;
18         for (int i = 0; i < a.length-1; i++) {
19             for (int j = 0; j < a.length-1-i; j++) {
20                 if (a[j]<a[j+1]) {
21                     temp=a[j];
22                     a[j]=a[j+1];
23                     a[j+1]=temp;
24                 }
25             }
26     
27         }
28         System.out.println("排序后");
29         for (int i = 0; i < a.length; i++) {
30             System.out.print(a[i]+" ");
31         }
32     }
33  
34 }

 

posted @ 2021-04-26 18:21  1902sjw  阅读(74)  评论(0编辑  收藏  举报