练习1:冒泡排列学员成绩
使用冒泡排序对输入的5名学员成绩进行降序排列
package com.hz;
import java.util.Arrays;
import java.util.Scanner;
public class Lianxi {
public static void main(String[] args) {
// TODO Auto-generated method stub
int nums[] = new int[] {87,100,34,86,87};
System.out.println(Arrays.toString(nums));
for(int i = 0;i<nums.length-1;i++) {
for(int j = 0;j<nums.length-1-i;j++) {
if(nums[j] > nums[j+1]) {
int temp = nums[j];
nums[j] = nums[j+1];
nums[j+1] = temp;
}
}
}
System.out.println(Arrays.toString(nums));
}
}
运行结果:
[87, 100, 34, 86, 87]
[34, 86, 87, 87, 100]
练习2:Arrays类排列字符
使用Arrays类升序排列一组字符,并查找某个特殊字符在升序后数组中的位置
package com.hz;
import java.util.Arrays;
import java.util.Scanner;
public class Lianxi1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
int s = sc.nextInt();
int nums[] = new int[s];
for(int i = 0; i <s; i ++){
nums[i] = sc.nextInt();
}
Arrays.sort(nums);
System.out.println(Arrays.toString(nums));
int x = sc.nextInt();
int index = Arrays.binarySearch(nums,x);
System.out.println(index);
}
}
运行结果:
3
12
12
23
[12, 12, 23]
练习3:显示班级学生总成绩
已知有3个班级各5名学员,请使用 二维数组计算各个班级的总成绩
package com.hz;
import java.util.*;
import java.util.Scanner;
public class Lianxi2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("多少班级:");
int q = sc.nextInt();
int d = sc.nextInt();
double z = 0;
double f[][] = new double[q][d];
for(int i = 0;i<f.length;i++ ) {
System.out.println("******第"+(i+1)+"个班******");
for(int j = 0;j<f[i].length;j++ ) {
System.out.print("请输入第"+(j+1)+"个学生的成绩:");
f[i][j] = sc.nextDouble();
z = z+f[i][j] ;
}
}
System.out.println("********成绩统计********");
int total; //保存总成绩
for(int i = 0; i < f.length; i++) {
String str = (i+1) + "班";
total = 0; //每次循环到此都将其归0
for(int j = 0; j < f[i].length; j++) {
total += f[i][j]; //成绩叠加
}
System.out.println(str+"总成绩:" + total);
}
}
}
运行结果:
多少班级:
3
3
******第1个班******
请输入第1个学生的成绩:12
请输入第2个学生的成绩:122
请输入第3个学生的成绩:22
******第2个班******
请输入第1个学生的成绩:333
请输入第2个学生的成绩:22
请输入第3个学生的成绩:1
******第3个班******
请输入第1个学生的成绩:1
请输入第2个学生的成绩:2
请输入第3个学生的成绩:3
********成绩统计********
1班总成绩:156
2班总成绩:356
3班总成绩:6
其他-公鸡5文钱一只,母鸡3文钱一只,小鸡一文钱三只,100文钱
package com.hz;
public class Lianxi1 {
public static void main(String[] args) {
/*公鸡5文钱一只,母鸡3文钱一只,小鸡一文钱三只,100文钱
*
*/
for(int x =0 ;x < 20;x++) {
for(int y = 0;y<33;y++) {
int z = 100-(x+y);
if((5*x+3*y+z/3)==100&&(z%3==0)) {
System.out.println("公鸡"+x+"+母鸡"+y+"+小鸡"+z+"="+(x+y+z));
}
}
}
}
}