문제
10 이하의 정수 n을 입력받은 후 n명의 이름(영문자 20자 이하)과 세 과목의 점수를 입력받아 총점이 높은 순으로 정렬하여 출력하는 프로그램을 작성하시오.
입력 예
3
Chung 50 65 89
Nolbu 100 38 99
Hungbu 85 95 77
출력 예
Hungbu 85 95 77 257
Nolbu 100 38 99 237
Chung 50 65 89 204
코드
import java.util.*;
class School {
String name;
int a;
int b;
int c;
int total;
}
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
School temp;
School [] s = new School[n];
for(int i=0; i<n; i++) {
s[i] = new School();
}
for(int i=0; i<n; i++) {
s[i].name = sc.next();
s[i].a = sc.nextInt();
s[i].b = sc.nextInt();
s[i].c = sc.nextInt();
s[i].total = s[i].a + s[i].b + s[i].c;
}
for(int i=0; i<n; i++) {
for(int j=0; j<n-1-i; j++) {
if(s[j].total < s[j+1].total) {
temp = s[j+1];
s[j+1] = s[j];
s[j] = temp;
}
}
}
for(int i=0; i<n; i++) {
System.out.printf("%s %d %d %d %d\n", s[i].name, s[i].a, s[i].b, s[i].c, s[i].total);
}
}
}
'Algorithm > JUNGOL' 카테고리의 다른 글
[정올] 628 : 파일입출력 - 자가진단3 (*) (0) | 2022.01.11 |
---|---|
[정올] 627 : 파일입출력 - 자가진단2 (0) | 2022.01.11 |
[정올] 198 : 구조체 - 형성평가3 (0) | 2022.01.11 |
[정올] 196 : 구조체 - 형성평가2 (0) | 2022.01.10 |
[정올] 618 : 구조체 - 자가진단6 (*) (0) | 2022.01.10 |