java数组练习

这是我从网上找来的练习题,花了点时间做一做,但是有些做得不太好,以后有时间再来优化吧。读者也可以自己做一做。

  1. 创建一个长度为6的整数数组,数组中有六个整数(直接赋值即可)。遍历数组中的每个元素,元素之间用空格隔开。比如:
               数组为:{1,2,3,4,5}
               打印结果:1 2 3 4 5 

我的代吗如下:

    public static void main(String[] args) {
        int[] arr = new int[]{1,2,3,4,5};
        for (int num:arr
             ) {
            System.out.print(num+" ");
        }
    }
  1. 现有一个小数数组{12.9,53.54,75.0,99.1,3.14}。请编写代码,找出数组中的最小值并打印。
    我的代码:
       double min =Double.MAX_VALUE;
        for(int i= 0;i<arr.length;i++){
            if(min > arr[i]) {
                min = arr[i];
            }
        }
        System.out.println("min = "+min);
  1. 创建一个长度为6的整数数组。请编写代码,随机生成六个0-100之间的整数存放到数组中,然后再计算出数组中元素的和并打印。

我的代码如下:

        Random random = new Random();
        int[] arr = new int[6];

        for(int i= 0;i<arr.length;i++){
            arr[i] = random.nextInt(101);
        }
        int sum =0;
        for(int i = 0;i<arr.length;i++){
            sum+=arr[i];
        }
        System.out.println("sum = "+sum);
  1. 有一个整数数组。请编写代码,让数组的最后一个元素代表个位,倒数第二个元素代表十位,以此类推。最终得到一个大的整数。比如:
			原数组:{1,2,3,4,5}
			最终得到的结果: 12345

个人觉得这个题目有点不好,直接输出就好了
我的代码:

        int[] arr = new int[]{1,2,3,4,5};
        for(int i =0;i<arr.length;i++){
            System.out.print(arr[i]);
        }
  1. 定义一个数组来存储10个学生的成绩{72,89,65,87,91,82,71,93,76,68},计算并输出学生的平均成绩。
        int[] arr = new int[]{72,89,65,87,91,82,71,93,76,68};
        int sum = 0;
        for(int i =0 ;i<arr.length;i++){
            sum+=arr[i];
        }
        System.out.println("averge = "+sum/arr.length);
  1. 有一个数组,其中有十个元素从小到大依次排列 {12,14,23,45,66,68,70,77,90,91}。再通过键盘录入一个整数数字。要求:把数字放入数组序列中,生成一个新的数组,并且数组的元素依旧是从小到大排列的。执行效果如下:
请输入一个整数数字:
50
生成的新数组是:12 14 23 45 50 66 68 70 77 90

代码如下:

        int[] arr= new int[]{12,14,23,45,66,68,70,77,90,91};

        Random random = new Random();
        int insertnum = random.nextInt(1000);
        System.out.println("insertnum = "+insertnum);

        int[] newarr = new int[arr.length+1];
        int flag =0;
        for(int i =0;i<arr.length;i++){
            if(insertnum < arr[i]){
                newarr[i] = insertnum;
                flag = 1;
            }
           if(flag == 1){
               newarr[i+1] = arr[i];
           }
           newarr[i] = arr[i];
        }
        if(flag == 0){
            newarr[newarr.length -1] =insertnum;
        }
        for (int num:newarr
             ) {
            System.out.print(num+" ");
        }
  1. 小李用自己的钱买了十只股票,年末他看了各只股票的收益分别是10.4%,-3%,-6.2%,1.2%,-6.1%,-19%,-3.8%,0.9%,-4.5%,5.5%。请使用数组相关知识编程,帮他统计赚钱的股票和赔钱的股票分别有多少只?打印效果如下:
				赚钱的股票一共有:4只
				赔钱的股票一共有:6
        double[] arr = new double[]{10.4,-3,-6.2,1.2,-6.1,-19,-3.8,0.9,-4.5,5.5};
        int kui=0;
        int zhuan = 0;
        for(int i =0 ;i < arr.length;i++){
            if(arr[i] < 0) {
                kui++;
            }
            if(arr[i] > 0){
                zhuan++;
            }

        }
        System.out.println("赚钱的股票一共有:"+ zhuan+"只");
        System.out.println("赔钱的股票一共有:"+ kui+"只");
  1. 定义一个数组其中包含多个数字。用自己的方式最终实现,奇数放在数组的左边,偶数放在数组的右边。(可以创建其他数组,不必须在原数组中改变)
        int[] arr= new int[]{1,2,3,4,5,6,7,8,9};

        int[] newarr = new int[9];
        int ji=0;
        int ou = 0;
        for(int i =0;i<arr.length;i++){
            if( (arr[i] & 1) ==1){
                ji++;
            }else {
                ou++;
            }
        }

        int j=0;
        for(int i =0;i<arr.length;i++){
            if( (arr[i] & 1) ==1){
                newarr[j] = arr[i];
                j++;
            }else {
                newarr[ji] = arr[i];
                ji++;
            }
        }

        for (int num:newarr
             ) {
            System.out.print(num+" ");
        }

  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值