//Nhập số lượng sinh viên System.out.print("Nhập số lượng sinh viên: "); int n = input.nextInt(); //Chuyển từ nhập số sang chữ input.nextLine(); //Khai báo 2 mảng là tenSV và diem String tenSV[] = new String[n]; double diem[] = new double[n]; //Khai báo mảng hocLuc String hocLuc[] = new String[n]; //Vòng lặp for nhập tên SV, điểm của SV đó và xét học lực của sinh viên for (int i = 0; i < n; i++) { System.out.println("Nhập tên sinh viên thứ " + (i + 1) + " :"); tenSV[i] = input.nextLine(); System.out.println("Nhập điểm sinh viên thứ " + (i + 1) + " :"); diem[i] = input.nextInt(); input.nextLine();//Chuyển từ nhập số sang nhập chữ //Khối lệnh if xét học lực if (diem[i] >= 9) { hocLuc[i] = "Xuất sắc"; } else { if (diem[i] >= 7.5) { hocLuc[i] = "Giỏi"; } else { if (diem[i] >= 6.5) { hocLuc[i] = "Khá"; } else { if (diem[i] >= 5) { hocLuc[i] = "Trung Bình"; } else { hocLuc[i] = "Yếu"; } } } } } //Duyệt mảng và xuất ra thông tin của từng sinh viên System.out.println("Danh sách sinh viên, điểm và học lực của từng sinh viên: "); for (int i = 0; i < n; i++) { System.out.println("Họ và tên: " + tenSV[i]); System.out.println("Điểm: " + diem[i]); System.out.println("Học lực: " + hocLuc[i]); System.out.println(); } //Sắp xếp tăng dần //Thuật toán sắp xếp nổi bọt //2 vòng lặp lồng nhau, vòng lặp thứ 1 duyệt i từ 0 đến n - 1 với n là số phần tử của mảng //Vòng lặp 2 duyệt j từ i + 1 (số liền sau i) đến n //Xét: nếu giá trị đứng trước (i)lớn hơn giá trị đứng sau (j = i + 1) //Thì đổi chỗ 2 giá trị đó cho nhau, bằng cách tạo ra 1 biến tạm và lần lượt gán giá trị, đổi chỗ cho nhau //Sau đó tăng i lên 1 và quay lại xét j //Khi i > n - 1 thì dừng vòng lặp for (int i = 0; i < (n - 1); i++) { for (int j = i + 1; j < n; j++) { if (diem[i] > diem[j]) { //Đổi chỗ điểm double tempDiem = diem[i]; diem[i] = diem[j]; diem[j] = tempDiem; //Đổi chỗ tên SV String tempTenSV = tenSV[i]; tenSV[i] = tenSV[j]; tenSV[j] = tempTenSV; } } } //Xuất mảng tên SV và mảng điểm sau khi đã được sắp xếp tăng dần theo điểm System.out.println("Danh sách sinh viên sau khi được sắp xếp tăng dần theo điểm là: "); for (int i = 0; i < n; i++) { System.out.println("Họ và tên: " + tenSV[i]); System.out.println("Điểm: " + diem[i]); System.out.println(); } }