第五章 数组

第一题

有一个数列:8,4,2,1,23,344,12

 1)循环输出数列的值

  2)求数列中所有数值的和

  3)猜数游戏:从键盘中任意输入一个数据,判断数列中是否包含此数

main.c

public static void main(String[] args) {
        int[] nums = {8, 4, 2, 1, 23, 344, 12};
        int sum = 0;
        for (int num : nums) {
            System.out.print(num + "\t");
            sum += num;
        }
        System.out.println();
        System.out.println(sum);
        Scanner input = new Scanner(System.in);
        int flag=0;
        System.out.println("请输入一个数字:");
        int i = input.nextInt();
        for (int num : nums) {

            if (num == i) {
                System.out.println("该数存在于数列中!!!");
                flag++;
            }
        }
        if (flag == 0) {
            System.out.println("该数不在数列中");
        }

    }

第二题

小明要去买一部手机,他询问了4家店的价格,分别是2800元,2900元,2750元和3100元,显示输出最低价。

main.c

public static void main(String[] args) {
        int[] nums = {2800, 2900, 2750, 3100};
        int t=0;
        for (int i = 0;i < 3;i++) {
            if (nums[i] < nums[i + 1]) {
                t = nums[i];

            }
        }
        System.out.println("价格最低的是:"+t);
    }

第三题

编写一个程序随机产生10个0到50之间的整数并且这些整数不能重复出现。

import java.util.Random;

Random r = new Random();    //创建一个生成随机数的实例

int randomNumber = r.nextInt(51);  // 0~50

mian.c 

 public static void main(String[] args) {
        int size = 10;
        int[] ints = new int[size];
        for (int i = 0; i < ints.length; i++) {
            Random rand = new Random();
            int randNums = rand.nextInt(51);
            ints[i] = randNums;
            for (int j = 0; j < i; j++) {
                if (randNums == ints[j]) {
                    i--;
                }

            }
            System.out.print(ints[i]+"\t");




        }
        Arrays.sort(ints);
        System.out.println();
        System.out.println(Arrays.toString(ints));



    }

第四题

编写一个冒泡排序算法对一组乱序的整数进行排序。

main.c

public static void main(String[] args) {
       char[] nums = {'a','c','u','b','e','p','f','z'};
        char temp;
        for (int i = 0; i < nums.length -1; i++) {
            boolean flag=false;
            for (int j = 1; j < nums.length-i ; j++) {
                if (nums[j - 1] > nums[j]) {
                    temp = nums[j - 1];
                    nums[j - 1] = nums[j];
                    nums[j] =temp;
                    flag=true;
                }

            }
            if (flag = false) {
                break;
            }
            System.out.println(Arrays.toString((nums)));
        }
    }

第五题

使用 java.util.Arrays.sort() 实现排序

有一列乱序的字符,‘a’,‘c’,‘u’,‘b’,‘e’,‘p’,‘f’,‘z’,排序并按照英文字母表的逆序输出。

main.c

public static void main(String[] args) {
        char[] nums = {'a','c','u','b','e','p','f','z'};
        Arrays.sort(nums);
        System.out.println(Arrays.toString(nums));
    }

第六题

二维数组

三个同学考试,共考三门课:语文,数学,英语。使用二维整数数组存放三个同学的学号和所有科目的考试成绩。

如下表:

学号

语文

数学

英语

1002

78

92

76

1003

67

88

80

1007

90

95

80

 main.c

public static void main(String[] args) {
        String[][] strings ={{"学号","语文","数学","英语"}
        ,{"1002","78","92","76"},{"1003","67","88","80"},{"1007","90","95","80"}};

        for (int  row = 0; row < strings.length; row++) {
            for (int col = 0; col < strings.length; col++) {
                System.out.print(strings[row][col]+"\t"+"\t");
            }
            System.out.println();
        }
        }

第七题

二维数组

要求:使用二维数组存储下表的字符串数据。

提示:

  1. 第二维数组(即列)需要动态创建,先分配好第二维数组的存储空间。
  2. 再将口决表存入对应位中。

 

main.c 

public static void main(String[] args) {
        String[][] strings = new String[9][9];
        for (int i = 0; i < strings.length; i++) {
            for (int j = 0; j < strings[i].length; j++) {
                if (j <= i) {
                    strings[i][j] = (j + 1) + "*" + (i + 1) + "=" + ((i + 1) * (j + 1)) + "\t";
                    System.out.print(strings[i][j]);
                }
            }
            System.out.println();
        }
    }

 第八题

实现一个简单学生成绩管理系统

定义一个数组,用户输入10个同学的成绩,数组下标即代表学生学号。

要求:

1、输入学号,打印该学生成绩。

2、输入成绩,打印该学生学号,如有相同成绩的学生学号都打印。

3、统计各个分数阶段学生人数(不及格(60),差(60-70),中(70-89),良(80-90),优(90-100)

4、输入学号,实现删除学生成绩功能

 mian.c

 public static void main(String[] args) {
        int size=10;
        int[] graces = new int[size];
        Scanner input = new Scanner(System.in);

        for (int k = 0; k < graces.length; k++) {
            System.out.print("请输入第"+(k+1)+"个同学的成绩:");
            graces[k] = input.nextInt();
        }
        System.out.println("输入完毕!");
        System.out.println();
        System.out.println("输入的成绩为:"+Arrays.toString(graces));
        int [] graces1=Arrays.copyOf(graces,10);
        Arrays.sort(graces1);
        System.out.println("排序后的成绩为:"+Arrays.toString(graces1));
        System.out.println();

        for (int i = 1; i <2 ; i++) {


            System.out.println("请输入你要实现的功能:");
            System.out.println("1.输入学号,打印该学生的成绩并判断是否要删除该学生的成绩." + "\n" + "2.输入成绩,打印该学生的学号." + "\n" + "3.统计各个阶段的学生人数." + "\n");
            int sort = input.nextInt();
            switch (sort) {
                case 1:
                    System.out.print("输入学号,查询成绩:");
                    int i1 = input.nextInt();
                    switch (i1) {
                        case 0:
                            System.out.println("该学生的成绩为:" + graces[0]);
                            System.out.println("是否要删除该学生的成绩:Yes  or  No");

                            for (int j = 1; j < 2; j++) {


                                String next = input.next();
                                if (next.equals("Yes")) {
                                    graces[0] = 0;

                                } else if (next.equals("No")) {
                                    System.out.println("该学生的成绩还是为:" + graces[0]);
                                } else {
                                    System.out.println("输入不合法!!!");
                                    System.out.println("请重新输入:");
                                    j--;
                                }
                            }
                            break;
                        case 1:
                            System.out.println("该学生的成绩为:" + graces[1]);
                            System.out.println("是否要删除该学生的成绩:Yes  or  No");
                            for (int j = 1; j < 2; j++) {


                                String next1 = input.next();
                                if (next1.equals("Yes")) {
                                    graces[1] = 0;

                                } else if (next1.equals("No")) {
                                    System.out.println("该学生的成绩还是为:" + graces[1]);
                                } else {
                                    System.out.println("输入不合法!!!");
                                    System.out.println("请重新输入:");
                                    j--;
                                }
                            }
                            break;
                        case 2:
                            System.out.println("该学生的成绩为:" + graces[2]);
                            System.out.println("是否要删除该学生的成绩:Yes  or  No");

                            for (int j = 1; j < 2; j++) {


                                String next2 = input.next();
                                if (next2.equals("Yes")) {
                                    graces[2] = 0;

                                } else if (next2.equals("No")) {
                                    System.out.println("该学生的成绩还是为:" + graces[2]);
                                } else {
                                    System.out.println("输入不合法!!!");
                                    System.out.println("请重新输入:");
                                    j--;
                                }
                            }
                            break;
                        case 3:
                            System.out.println("该学生的成绩为:" + graces[3]);
                            System.out.println("是否要删除该学生的成绩:Yes  or  No");

                            for (int j = 1; j < 2; j++) {


                                String next3 = input.next();
                                if (next3.equals("Yes")) {
                                    graces[3] = 0;

                                } else if (next3.equals("No")) {
                                    System.out.println("该学生的成绩还是为:" + graces[3]);
                                } else {
                                    System.out.println("输入不合法!!!");
                                    System.out.println("请重新输入:");
                                    j--;
                                }
                            }
                            break;
                        case 4:
                            System.out.println("该学生的成绩为:" + graces[4]);
                            System.out.println("是否要删除该学生的成绩:Yes  or  No");

                            for (int j = 1; j < 2; j++) {


                                String next4 = input.next();
                                if (next4.equals("Yes")) {
                                    graces[4] = 0;

                                } else if (next4.equals("No")) {
                                    System.out.println("该学生的成绩还是为:" + graces[4]);
                                } else {
                                    System.out.println("输入不合法!!!");
                                    System.out.println("请重新输入:");
                                    j--;
                                }
                            }
                            break;
                        case 5:
                            System.out.println("该学生的成绩为:" + graces[5]);
                            System.out.println("是否要删除该学生的成绩:Yes  or  No");

                            for (int j = 1; j < 2; j++) {


                                String next5 = input.next();
                                if (next5.equals("Yes")) {
                                    graces[5] = 0;

                                } else if (next5.equals("No")) {
                                    System.out.println("该学生的成绩还是为:" + graces[5]);
                                } else {
                                    System.out.println("输入不合法!!!");
                                    System.out.println("请重新输入:");
                                    j--;
                                }
                            }
                            break;
                        case 6:
                            System.out.println("该学生的成绩为:" + graces[6]);
                            System.out.println("是否要删除该学生的成绩:Yes  or  No");

                            for (int j = 1; j < 2; j++) {


                                String next6 = input.next();
                                if (next6.equals("Yes")) {
                                    graces[6] = 0;

                                } else if (next6.equals("No")) {
                                    System.out.println("该学生的成绩还是为:" + graces[6]);
                                } else {
                                    System.out.println("输入不合法!!!");
                                    System.out.println("请重新输入:");
                                    j--;
                                }
                            }
                            break;
                        case 7:
                            System.out.println("该学生的成绩为:" + graces[7]);
                            System.out.println("是否要删除该学生的成绩:Yes  or  No");

                            for (int j = 1; j < 2; j++) {


                                String next7 = input.next();
                                if (next7.equals("Yes")) {
                                    graces[7] = 0;

                                } else if (next7.equals("No")) {
                                    System.out.println("该学生的成绩还是为:" + graces[7]);
                                } else {
                                    System.out.println("输入不合法!!!");
                                    System.out.println("请重新输入:");
                                    j--;
                                }
                            }
                            break;
                        case 8:
                            System.out.println("该学生的成绩为:" + graces[8]);
                            System.out.println("是否要删除该学生的成绩:Yes  or  No");

                            for (int j = 1; j < 2; j++) {


                                String next8 = input.next();
                                if (next8.equals("Yes")) {
                                    graces[8] = 0;

                                } else if (next8.equals("No")) {
                                    System.out.println("该学生的成绩还是为:" + graces[8]);
                                } else {
                                    System.out.println("输入不合法!!!");
                                    System.out.println("请重新输入:");
                                    j--;
                                }
                            }
                            break;
                        case 9:
                            System.out.println("该学生的成绩为:" + graces[9]);
                            System.out.println("是否要删除该学生的成绩:Yes  or  No");

                            for (int j = 1; j < 2; j++) {


                                String next9 = input.next();
                                if (next9.equals("Yes")) {
                                    graces[9] = 0;

                                } else if (next9.equals("No")) {
                                    System.out.println("该学生的成绩还是为:" + graces[9]);
                                } else {
                                    System.out.println("输入不合法!!!");
                                    System.out.println("请重新输入:");
                                    j--;
                                }
                            }
                            break;

                    }
                    System.out.println("这十名同学的成绩为:" + Arrays.toString(graces));
                    System.out.println("是否还需要实现功能:Yes  or  No ");
                    for (int j = 1; j < 2; j++) {


                        String toFirst = input.next();
                        if (toFirst.equals("Yes")) {
                            i--;
                        } else if (toFirst.equals("No")) {
                            break;
                        } else {
                            System.out.println("语法错误,请重新输入:");
                            j--;
                        }
                    }

                    break;
                case 2:
                    System.out.print("输入成绩,查询学号:");
                    int grace = input.nextInt();
                    for (int j = 0; j < graces.length; j++) {
                        if (grace == graces[j]) {
                            System.out.println("该学生的学号是:" + j);

                        }
                    }

                    System.out.println("是否还需要实现功能:Yes  or  No ");
                    for (int j1 = 1; j1 < 2; j1++) {


                        String toFirst = input.next();
                        if (toFirst.equals("Yes")) {
                            i--;
                        } else if (toFirst.equals("No")) {
                            break;
                        } else {
                            System.out.println("语法错误,请重新输入:");
                            j1--;
                        }
                    }
                    break;
                case 3:
                    int a = 0;
                    int b = 0;
                    int c = 0;
                    int d = 0;
                    int e = 0;
                    for (int j = 0; j < graces.length; j++) {
                        if (graces[j] < 60) {
                            a++;
                        }

                        if (graces[j] >= 60 && graces[j] < 70) {
                            b++;
                        }
                        if (graces[j] >= 70 && graces[j] < 80) {
                            c++;
                        }
                        if (graces[j] >= 80 && graces[j] < 90) {
                            d++;
                        }
                        if (graces[j] >= 90 && graces[j] <= 100) {
                            e++;
                        }
                    }
                    System.out.println("不及格的人数有:" + a);
                    System.out.println("差的人数有:" + b);
                    System.out.println("中的人数有:" + c);
                    System.out.println("良的人数有:" + d);
                    System.out.println("优的人数有:" + e);
                    System.out.println("是否还需要实现功能:Yes  or  No ");
                    for (int j2 = 1; j2 < 2; j2++) {


                        String toFirst = input.next();
                        if (toFirst.equals("Yes")) {
                            i--;
                        } else if (toFirst.equals("No")) {
                            break;
                        } else {
                            System.out.println("语法错误,请重新输入:");
                            j2--;
                        }
                    }
                    break;
                default: {
                    System.out.println("输入错误!!!请重新输入:");
                    i--;
                }

            }


        }


    }

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值