Java数组练习

来源:互联网 发布:淘宝客赚钱吗 编辑:程序博客网 时间:2024/04/28 16:04

Java一维数组的小练习(新手 欢迎交流指正O(∩_∩)O)
题目:对一维数组进行增删改查:int[] num = new int[10];
要求:用方法实现
1.输入10个整数存入数组
2.删除指定位置上的数
3.修改指定位置上的数
4.查找某个数的位置(下标)
5.查找最大值
6.查找最小值
7.去掉一个最大值,去掉一个最小值,求平均值

实现代码如下:

import java.util.Scanner;public class ShuZu {    Scanner sc = new Scanner(System.in);    int[] shu = new int[10];    public ShuZu() {        input();    }    public void input() {        System.out.println("请依次输入此数组的中的10个数");        for (int i = 0; i < 10; i++) {            shu[i] = sc.nextInt();        }        System.out.println("你输入的数组为:");        for (int j = 0; j < 10; j++) {            System.out.print(shu[j] + ",");        }        xuanZe();    }    public void xuanZe() {        System.out.println("请输入序号进行对应的操作");        System.out                .println("1.删除指定位置的数字\n2.修改指定位置的数字\n3.查找某个数的位置\n4.查找最大值\n5.查找最小值\n6.去掉一个最大值和一个最小值,求平均数");        switch (sc.nextInt()) {        case 1:            delete();            break;        case 2:            xiugai();            break;        case 3:            find();            break;        case 4:            Max();            break;        case 5:            Min();            break;        case 6:            pingjun();            break;        }    }    public void delete(){    System.out.println("请输入你要删除数字的序号:(从0开始)");    size--;    int[] xin=new int[size];    int a=sc.nextInt();    for(int j=0;j<size;j++){        if(j<a){            xin[j]=shu[j];        }else{            xin[j]=shu[j+1];            shu[j]=shu[j+1];        }        System.out.print(xin[j]+",");    }    System.out.println("\n"+"原数组变为:");    for(int aw:shu){        System.out.print(aw+",");    }    System.out.println();    xuanZe();}    public void xiugai() {        System.out.println("请输入你要修改的数字序号");        int a = sc.nextInt();        System.out.println("请输入你修改的值");        int b = sc.nextInt();        if (a < 0 || a > 10) {            System.out.println("输入序号不正确,请重新输入");            xiugai();        } else {            shu[a] = b;            for (int j = 0; j < 10; j++) {                System.out.print(shu[j] + ",");            }        }        xuanZe();    }    public void find() {        int biaoji = 0;        System.out.println("请输入你要查找的数");        int a = sc.nextInt();        for (int j = 0; j < 10; j++) {            if (a == shu[j]) {                System.out.println("下标:" + j);                biaoji += 1;            }        }        if (biaoji == 0) {            System.out.println("不存在你要找的数字,请重新输入!");            find();        } else {            System.out.println("总共找到" + biaoji + "个下标");        }        xuanZe();    }    public void Max(){        int max=shu[0];        for (int j = 0; j < 10; j++) {            if (shu[j]>=max) {                max=shu[j];            }        }        System.out.println("最大的数为"+max);        xuanZe();    }    public void Min(){        int min=shu[0];        for (int j = 0; j < 10; j++) {            if (shu[j]<=min) {                min=shu[j];            }        }        System.out.println("最小的数为"+min);        xuanZe();    }    public void pingjun(){        int sum=0;        int max=shu[0];        int max_ind=0;        for (int i = 0; i < 10; i++) {            if (shu[i]>=max) {                max=shu[i];                max_ind=i;            }        }        int min=shu[0];        int min_ind=0;        for (int j = 0; j < 10; j++) {            if (shu[j]<=min) {                min=shu[j];                min_ind=j;            }        }        for (int z = 0; z < 10; z++) {            if (z==max_ind||z==min_ind) {                continue;            }else{                sum=sum+shu[z];            }        }        System.out.println("平均值为"+sum/8);        xuanZe();    }    public static void main(String[] args) {        // TODO Auto-generated method stub        ShuZu sz = new ShuZu();    }}
0 0
原创粉丝点击