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("该数在数组中不存在!");
}
}
}
不懂英文,拼音代替,瞬间方了...
不知道这道题这么消化可不可以,请各位老师帮忙指点一下!
|
|