1.键盘录入月份,输出对应的季节
public class Test1 { public static void main(String[] args) { // 键盘录入一个月份,用Scanner实现 Scanner sc = new Scanner(System.in); // 接收数据 System.out.println("请输入一个月份(1-12):"); int month = sc.nextInt(); // 判断该月份是几月,根据月份输出对应的季节 /* if (month == 1) { System.out.println("冬季"); } else if (month == 2) { System.out.println("冬季"); } else if (month == 3) { System.out.println("春季"); } else if (month == 4) { System.out.println("春季"); } else if (month == 5) { System.out.println("春季"); } else if (month == 6) { System.out.println("夏季"); } else if (month == 7) { System.out.println("夏季"); } else if (month == 8) { System.out.println("夏季"); } else if (month == 9) { System.out.println("秋季"); } else if (month == 10) { System.out.println("秋季"); } else if (month == 11) { System.out.println("秋季"); } else if (month == 12) { System.out.println("冬季"); } else { System.out.println("你输入的月份有误"); } */ //(month==3 || month==4 || month==5) if(month==1 || month==2 || month==12) { System.out.println("冬季"); }else if(month==3 || month==4 || month==5) { System.out.println("春季"); }else if(month==6 || month==7|| month==8) { System.out.println("夏季"); }else if(month==9 || month==10 || month==11) { System.out.println("秋季"); }else { System.out.println("你输入的月份有误"); } } }
2.打印所有回文数
public class Test2 { public static void main(String[] args) { //5位数告诉了我们数据的范围,用for循环实现 for(int x=10000; x<100000; x++) { //获取每一个5位数,然后得到它的个位,十位,千位,万位 int ge = x%10; int shi = x/10%10; int qian = x/10/10/10%10; int wan = x/10/10/10/10%10; //把满足条件的数据输出即可 if((ge==wan) && (shi==qian)) { System.out.println(x); } } } }
3.不死神兔
public class Test3 { public static void main(String[] args) { //定义数组 int[] arr = new int[20]; //初始化第一个月和第二个月的兔子对数c arr[0] = 1; arr[1] = 1; for(int x=2; x<arr.length; x++) { arr[x] = arr[x-2] + arr[x-1]; } System.out.println("第二十个月的时候的兔子对数是:"+arr[19]); } }
4.求数组中满足要求的元素和
1)定义一个int类型的一维数组,内容为{171,72,19,16,118,51,210,7,18}
2)求出该数组中满足要求的元素和。
求和的元素的个位和十位不能包含7,并且只能为偶数。
public class Test4 { public static void main(String[] args) { //定义一个int类型的一维数组 int[] arr = {171,72,19,16,118,51,210,7,18}; //定义一个求和变量 int sum = 0; //遍历数组,获取到数组中的每一个元素 for(int x=0; x<arr.length; x++) { if((arr[x]%10 != 7) && (arr[x]/10%10 != 7) && (arr[x]%2 == 0)) { sum += arr[x]; } } System.out.println("sum:"+sum); } }
6.裁判评分
在编程竞赛中,有6个评委为参赛的选手打分,分数为0-100的整数分。
选手的最后得分为:去掉一个最高分和一个最低分后 其余4个选手的平均值。
请写代码实现。(不考虑小数部分)
public class Test5 { public static void main(String[] args) { //定义一个长度为6的数组 int[] arr = new int[6]; //通过键盘录入的方式给出评委的分数 Scanner sc = new Scanner(System.in); for(int x=0; x<arr.length; x++) { // arr[x] = sc.nextInt(); System.out.println("请给出第"+(x+1)+"个评委的分数(0-100):"); int number = sc.nextInt(); arr[x] = number; } //写方法实现获取数组中的最大值,最小值 int max = getMax(arr); int min = getMin(arr); //写方法实现数组元素的求和 int sum = sum(arr); // (和-最高分-最低分)/(arr.length-2) int avg = (sum-max-min)/(arr.length-2); //输出分数即可 System.out.println("该选手的最终得分是:"+avg); } //数组元素求和 public static int sum(int[] arr) { int sum = 0; for(int x=0; x<arr.length; x++) { sum += arr[x]; } return sum; } //数组中的最小值 public static int getMin(int[] arr) { int min = arr[0]; for(int x=1; x<arr.length; x++) { if(arr[x] < min) { min = arr[x]; } } return min; } //数组中的最大值 public static int getMax(int[] arr) { int max = arr[0]; for(int x=1; x<arr.length; x++) { if(arr[x] > max) { max = arr[x]; } } return max; } }
7.数组反转
(1)键盘录入5个int类型的数据存储数组arr中
(2)定义方法将arr数组中的内容反转
(3)定义方法对反转后的数组进行遍历
public class Test6 { public static void main(String[] args) { // 定义一个长度为5的数组 int[] arr = new int[5]; // 通过键盘录入数据给数组中的元素赋值 Scanner sc = new Scanner(System.in); for (int x = 0; x < arr.length; x++) { System.out.println("请给出第" + (x + 1) + "个元素"); arr[x] = sc.nextInt(); } System.out.println("反转前的数组元素:"); printArray(arr); // 定义方法将arr数组中的内容反转 reverse(arr); System.out.println("反转后的数组元素:"); //定义方法遍历数组 printArray(arr); } //遍历数组 public static void printArray(int[] arr) { System.out.print("["); for(int x=0;x<arr.length; x++){ if(x == arr.length-1) { System.out.println(arr[x]+"]"); }else { System.out.print(arr[x]+", "); } } } /* * 两个明确: 返回值类型:void 参数列表:int[] arr */ public static void reverse(int[] arr) { for(int startIndex=0,endIndex=arr.length-1;startIndex<=endIndex;startIndex++,endIndex--) { int temp = arr[startIndex]; arr[startIndex] = arr[endIndex]; arr[endIndex] = temp; } } }
8.数组基本查找
数组元素查找(查找指定元素第一次在数组中出现的索引)
public class Test7 { public static void main(String[] args) { int[] arr = { 5,4 , 3, 2, 1 }; //要查询的元素通过键盘录入的方式确定 Scanner sc = new Scanner(System.in); System.out.println("请输入要查找的元素:"); int number = sc.nextInt(); //定义一个查找数组元素第一次出现位置的方法 //调用方法 int index =getIndex(arr, number); System.out.println("index:"+index); } public static int getIndex(int[] arr,int value) { //遍历数组,获取到每一个元素,进行比较,如果想等,就直接把该处的索引返回。 int index = -1; for(int x=0; x<arr.length; x++) { if(arr[x] == value) { index = x; break; } } return index; } }
时间: 2024-10-27 12:00:38