java数组,冒泡排序,选择排序(了解80%~90%)
第一题:
1.定义一个包含十个元素的数组。数组元素自己给出
2.遍历打印出数组元素
package demo; public class Demo05 { public static void main(String[] args) { int [] arr=new int[]{11,22,22,56,43,89,45,26,17,65}; for (int i = 0; i <arr.length; i++) { System.out.print(" "+arr[i]); } } }
3.求出数组当中的最小值打印出来
4.求出数组当中的最大值打印出来
package demo; public class Demo05 { public static void main(String[] args) { int [] arr=new int[]{22,11,22,56,43,89,45,26,17,65}; int max=arr[0]; int min=arr[0]; for (int i = 0; i <arr.length-1; i++) { if (max<arr[i]) { max=arr[i]; }if (min>arr[i]){ min=arr[i]; } } System.out.println("最小值为"+min); System.out.println("最大值为"+max); } }
5.求数组当中 第二大 值
package demo; import java.util.Arrays; public class Demo05 { public static void main(String[] args) { int[] arr = new int[]{22, 11, 22, 56, 43, 89, 45, 26, 17, 65}; Arrays.sort(arr); for (int i = 0; i < 10; i++) System.out.print(" "+arr[i]);//升序排列 System.out.print("\n第二大值为"+arr[8]); } }
第二题:
1.定义一个包含十个元素的数组。数组元素自己给出
2.定义一个方法,求出该数组的平均数,并返回
3.在main方法中将该数组中大于平均数的元素打印到控制台上(平均数用2中定义的方法得到)
package demo; public class Demo06 { public static void main(String[] args) { int[] arr = new int[]{58, 62, 1, 5, 96, 45, 36, 75, 14, 26}; System.out.println(avg(arr)); } public static double avg(int[] a) { int sum=0; double sun; for (int x:a){ sum+=x; } sun=sum/a.length; return sun; } }
第三题:
1.定义一个包含五个元素的数组。数组元素自己给出
2.将数组当中数据小于10的打印出来
如果存在,则打印出来,具体的数据
如果不存在,则打印出来,未找到合适的数据
package demo; public class Demo07 { public static void main(String[] args) { int [] arr=new int[]{15,6,8,42,87}; for (int i = 0; i <arr.length ; i++) { if (arr[i]<10){ System.out.println(arr[i]); } }System.out.println("未找到合适的数据"); } }
第四题:
1.定义一个包含十个元素的数组。数组元素自己给出
2.统计该数组中有多少个大于平均值的元素,在控制台上打印出来.并求和.
package demo; public class Demo08 { public static void main(String[] args) { int [] arr=new int[]{56,34,15,86,64,25,30,60,90,100}; int sum = 0; int avg = 0; for (int i = 0; i < arr.length; i++) { sum += arr[i]; } avg=(sum/arr.length); System.out.println("数组的和为"+sum); System.out.println("平均值为"+avg); int g=0; int v=0; for (int i = 0; i < arr.length; i++) { if (arr[i]>avg){ System.out.print(" "+arr[i]); v+=(arr[i]); } } System.out.print("\n大于平均值的元素的和为"+v); } }
第五题:
1.现存在如下两个数组:
int[] arr1 = {1,2,3};
int[] arr2 = {4,5,6};
2.要求定义一个方法,将上面两个数组传入,在方法中将两个数组合并,形成一个新的数组,并返回.
新的数组: arr3 = {1,2,3,4,5,6}
3.在main方法中调用该方法,将返回的数组遍历打印
package demo; public class Demo09 { public static void main(String[] args) { int[] arr1 = {1,2,3}; int[] arr2 = {4,5,6}; int[] arr3=new int[arr1.length+arr2.length]; for (int i = 0; i <arr1.length; i++) { arr3[i]=arr1[i]; } for (int i = 0; i <arr2.length; i++) { arr3[arr1.length+i]=arr2[i]; } for (int i = 0; i <arr3.length ; i++) { System.out.println(arr3[i]); } }
第六题:
需求:
(1)定义一个int类型的一维数组,内容为{171,72,19,16,118,51,210,7,18}
(2)求出该数组中满足要求的元素和。
要求:求和的元素的个位和十位不能包含7,并且只能为偶数。
package demo; public class Demo11 { public static void main(String[] args) { int[] arr = new int[]{171, 72, 19, 16, 118, 51, 210, 7, 18}; int sum=0; for (int i = 0; i <arr.length ; i++) { //判断该元素是否满足条件 if (arr[i]%10!=7&&arr[i]/10%10!=7&&arr[i]%2==0){ sum+=arr[i]; }
} //输出求和和变量的值 System.out.println("sum:"+sum); } }