Java老师早上布置了三个题目,都非常简单,仅供参考
数组排序
题目
歌手大赛10个评委,先排序,去掉最高分和最低分,求平均分,要求输出最高分、最低分和平均分。
我的答案
package neworld;
import java.util.Arrays;
public class Test1 {
public static void main(String[] args) {
int[] score = {85, 94, 96, 99, 91, 92, 88, 81,78, 83};
Arrays.sort(score);
int sum = 0;
for (int i : score) {
sum = sum + i;
}
System.out.println("最高分:" + score[9]);
System.out.println("最低分:" + score[0]);
System.out.println("平均分" + (double)(sum-score[0]-score[9])/10);
}
}
输出
二维数组找最大
题目
定义一个二维数组,找出数组中最大数连同下标一起输出
我的答案
public class Test2 {
public static void main(String[] args) {
int b[][] = new int[][] { { 1 } , { 2 , 3 },{4,5,6} };
int a= 0,d = 0,max = 0;
for(int k = 0;k<b.length;k++) {
for(int c = 0;c < b[k].length;c++) {
if(b[k][c] > max) {
max = b[k][c];
a = k;d = c;
}
}
}
System.out.println("此二维数组最大值为:" + max);
System.out.println("它的下标为" + a +"," + d );
}
}
输出
数组去重
题目
定义一个整形数组为{1,7,5,6,4,3,3,2,6,7,8},将该数值中重复的数字去除,生成一个排序后新数组{1,2,3,4,5,6,7,8}
我的答案
public class Test3 {
public static void main(String[] args) {
int soc[] = {1,7,5,6,4,3,3,2,6,7,8};
int[] socs = new int[soc.length];
int m =0;
for (int i=0;i<soc.length;i++) {
boolean flag = true;
for(int n = 0; n <socs.length;n++) {
if(socs[n] == soc[i]) {
flag = false;
}
}
if(flag) {
socs[m++] = soc[i];
}
}
Integer[] newArr = new Integer[m];
//检测数组有多少为null,并且赋值为新的数组
for(int k = 0;k < m;k++) {
newArr[k] = socs[k];
}
Arrays.sort(newArr);
System.out.println(Arrays.toString(newArr));
}
}
1 条评论
好厉害(✪▽✪)