diff --git "a/40 \346\227\266\345\255\246\345\256\211/20230405 \346\225\260\347\273\204\344\275\234\344\270\232.md" "b/40 \346\227\266\345\255\246\345\256\211/20230405 \346\225\260\347\273\204\344\275\234\344\270\232.md" new file mode 100644 index 0000000000000000000000000000000000000000..02f463d8da5a8ae13032c81e19052d444985116a --- /dev/null +++ "b/40 \346\227\266\345\255\246\345\256\211/20230405 \346\225\260\347\273\204\344\275\234\344\270\232.md" @@ -0,0 +1,167 @@ +## 编码题 + +**1.定义一个含有五个元素的数组,并为每个元素赋值,求数组中所有元素的最小值** + +**操作步骤:** + +​ 1.定义5个元素数组 + +​ 2.可以使用初始化数组的两种方式之一为数组元素赋值 + +​ 3.遍历数组求数组中的最小值 + +~~~ java +import java.util.Scanner; + +public class D1 { + public static void main(String[] args) { + int[] num =new int[5]; + for (int i = 0; i < num.length; i++) { + Scanner sc=new Scanner(System.in); + System.out.println("请输入"+(i+1)); + num[i]=sc.nextInt(); + } + int min = num[0]; + for (int i = 0; i num[i]){ + min=num[i]; + } + } + System.out.println("最小的是"+min); + } + } + +~~~ + + + +**2.需求:求出数组中索引与索引对应的元素都是奇数的元素** + +**分析:** + +​ 1、遍历数组 + +​ 2、判断索引是否是奇数(索引 % 2 != 0) + +​ 3、判断索引对应的元素是否是奇数(arr[索引] % 2 != 0) + +​ 4、满足条件输出结果 + +~~~ java +public class D2 { + public static void main(String[] args) { +// 1、遍历数组 +// +// 2、判断索引是否是奇数(索引 % 2 != 0) +// +// 3、判断索引对应的元素是否是奇数(arr[索引] % 2 != 0) +// +// 4、满足条件输出结果 + int[] arr ={12,11,17,4,6}; + for (int i = 0; i < arr.length; i++) { + if (i%2!=0 && arr[i]%2!=0){ + System.out.println("基数是"+arr[i]); + + } + } + + } +} + +~~~ + + + + + +**3.按要求在main方法中完成以下功能:** + +​ a. 定义一个长度为5的int型数组arr,提示用户输入5个1-60之间的数字作为数组元素 + +​ b. 生成2-10(范围包含2和10)之间的随机数num + +​ c. 遍历数组arr,筛选出数组中不是num倍数的元素并输出 + +​ **PS:输入的数组元素范围包括1和60,不需要代码判断** + +~~~ java +import java.util.Random; +import java.util.Scanner; + +public class D3 { + public static void main(String[] args) { + int[] arr = new int[5]; + for (int i = 0; i < arr.length; i++) { + Scanner sc= new Scanner(System.in); + System.out.println("请输入1-60的数"+(i+1)+":"); + arr[i]=sc.nextInt(); + } + Random ran=new Random(); + int num =ran.nextInt(8)+2; + for (int i = 0; i < arr.length; i++) { + if (arr[i]%num!=0){ + System.out.println(arr[i]+"不是"+num+"的倍数"); + } + } + + } +} +~~~ + + + +**4.有一个数组int[] arr = {9,1,3,4,54,56,23,22,20,43,45,78};,要求打印数组中能被6整除的元素。** + +~~~ java +public class D4 { + public static void main(String[] args) { +// **4.有一个数组int[] arr = {9,1,3,4,54,56,23,22,20,43,45,78};,要求打印数组中能被6整除的元素。** + int[] arr ={9,1,3,4,54,56,23,22,20,43,45,78}; + System.out.print("能被6整除的元素有:"); + for (int i = 0; i < arr.length; i++) { + if (arr[i]%6==0){ + System.out.print(+arr[i]+" "); + + } + + } + } +} + +~~~ + + + +**5.定义一个长度为20的数组,元素为20-40的随机数,要求判断指定元素在数组中出现的次**数,指定元素为键盘录入范围为20-40之间。 + +~~~ java +import java.util.Random; +import java.util.Scanner; + +public class D5 { + public static void main(String[] args) { +// **5.定义一个长度为20的数组,元素为20-40的随机数,要求判断指定元素在数组中出现的次**数,指定元素为键盘录入范围为20-40之间。 + int[] arr = new int[20]; + Scanner sc= new Scanner(System.in); + System.out.println("输入20-40的数:"); + int a=sc.nextInt(); + Random ran =new Random(); + for (int i = 0; i < arr.length; i++) { + arr[i] = ran.nextInt(21)+20; + } + int count=0; + for (int i = 0; i