A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

package day08;
/*分析以下需求,并用代码实现:
(1)键盘录入10个int类型的整数,把这10个整数存储到一个int类型的一维数组arr中。
(2)将arr数组中的内容反转
(3)定义一个方法:求该数组中元素的和,并计算出数组中元素为奇数的个数,并打印出来。
        格式为:数组元素的和是100,数组中元素为奇数的个数是3个
(4)定义一个方法:输入一个整数,查看该整数是否在数组中存在。如果不存在,则输出:该整数在数组中不存在。如果存在,则输出该整数在数组中存在的个数。*/
import java.util.Scanner;
public class Test8 {

        public static void main(String[] args){
                //创建录入对象
                Scanner sc = new Scanner(System.in);
                //创建10个索引的数组
                System.out.println("请录入10个整数:");
                int[] arr = new int[10];
                //遍历数组的每个索引
                for(int i = 0; i < arr.length; i++){
                        //利用键盘录入的方式给索引赋值;
                        System.out.println("请录入"+i+"索引的元素:");
                        arr[i] = sc.nextInt();
                }
                fanZhuan(arr);        //调用反转方法
                bianLi(arr);        //调用遍历方法
                qiuHe(arr);                //调用求和方法
                System.out.println("请录入一个整数,查看这个整数是否存在数组中存在!");
                chaKan(arr,sc.nextInt());        //录入一个整数并调用查看数组中是否存在这个整数,如果存在共有几个
        }
        //建立方法,将数组中记录的索引元素反转
        public static void fanZhuan(int[] arr){
                //利用for循环将数组中索引的元素依次反转
                for(int i = 0; i < arr.length/2; i++){
                        /*
                         *建立一个临时变量用于反转
                         *反转的过程如下:
                         *                ↓
                         *arr[0] arr[9]
                         *arr[1] arr[8]
                         *arr[2] arr[7]
                         *arr[3] arr[6]
                         *arr[4] arr[5]
                         */
                        int temp = arr[i];
                        arr[i] = arr[arr.length-i-1];
                        arr[arr.length-i-1] = temp;
                }
        }
        //定义一个方法查看遍历输出反转后的数组
        public static void bianLi(int[] arr){
                System.out.print("您录入的元素反转后为:");
                for(int i = 0; i < arr.length; i++){
                        System.out.print(arr[i]+" ");
                }
                System.out.println();
        }
        //定义方法,对数组元素求和.并记录数组元素中奇数的个数
        public static void qiuHe(int[] arr){
        //定义sum变量 记录数组中元素的和
                int sum = 0;
        //定义a变量 记录数组元素中奇数的个数
                int a = 0;
                for(int i = 0; i < arr.length; i++){
                        sum += arr[i];
                        //利用if语句判断数组元素中奇数的个数并用a记录.出现一次+一次!
                        if(arr[i] % 2 == 1){
                                a++;
                        }
                }
                System.out.println("数组元素和为:"+ sum +",数组中元素的奇数个数为:"+ a +"个!");
        }
        //定义方法,输入一个整数,查看该整数是否在数组中存在。如果不存在,则输出:该整数在数组中不存在。如果存在,则输出该整数在数组中存在的个数。
        public static void chaKan(int[] arr, int b ){
        //定义一个变量来记录 录入的整数在数组中出现的个数
                int a = 0;
        //利用for循环与if语句对比查找录入的整数存在个数,并用a记录出现一次+一次
                for(int i = 0; i < arr.length; i++){
                        if(arr[i] == b){
                                a++;
                        }
                }
                //利用if语句判断录入的整数是否出现!
                if(a >= 1){
                        System.out.println("该数在数组中存在:"+a+"个.");
                }else{
                        System.out.println("该数在数组中不存在!");
                }

        }
}
不懂英文,拼音代替,瞬间方了...
不知道这道题这么消化可不可以,请各位老师帮忙指点一下!

5 个回复

正序浏览
零基础  所以我方了
回复 使用道具 举报
这是最基本的数组操作啊
来自宇宙超级黑马专属安卓客户端来自宇宙超级黑马专属安卓客户端
回复 使用道具 举报
水一下.
回复 使用道具 举报
如果硬说有问题的话,那就是输出格式不符合要求
回复 使用道具 举报
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马