Transparent White Star

[백준/C] 1546번: 평균

     

    세준이가 기말고사를 망쳤대요. ㅜㅜ 그래도 조작은 안돼!!

     

    최고 점수 M을 구하고, 모든 점수를 원점수/M*100으로 수정
     > 이후 평균 구하기

    예) 점수가 각 40, 80, 60점이라 할 때  
     > M(최고 점수) = 80, 평균 = (50+100+75)/3 = 75

     

    예제를 통해서 M도 수정을 해준다는 걸 알 수 있었죠...

    그럼 예외가 없으니까 조금? 수월? 할? 듯?

     

    #define _CRT_SECURE_NO_WARNINGS
    #include <stdio.h>
    
    int main() {
        int n, M = 0;
        double sum = 0;
        int score[1000];
    
        scanf("%d", &n);
    
        for (int i = 0; i < n; i++) {
            scanf("%d", &score[i]);
            if (M < score[i]) { M = score[i]; }
        }
    
        for (int i = 0; i < n; i++) {
            sum += (double)score[i] / M * 100;
        }
    
        printf("%f", sum / n);
            
        return 0;
    }

     

    과목의 개수가 1000개 이하니까 score 배열을 1000칸으로 받아줍니다.

    그런 다음 M에 최댓값을 저장할 수 있도록 반복문을 만들어주고, 아래에 sum 변수에 점수를 변환해서 저장합니다.

    마지막으로 sum/n을 출력해서 코드를 마쳐줬습니다...

    근데 여기서 double형으로 변환을 안 시켜줘서 막혔었는데 선배가 알려줘서 풀었어요 우하하

    형변환에 아직 많이 약한 것 같습니다... 어려워이...

    눈물이 나지만 해야죠

    잉잉

    언젠간 잘하게 되겠지....

     

    '백준' 카테고리의 다른 글

    [백준/C] 2839번: 설탕 배달  (0) 2024.07.10
    [백준/C] 10773번: 제로  (0) 2024.07.09
    [백준/C] 25304번: 영수증  (0) 2024.07.07
    [백준/C] 8393번: 합  (0) 2024.07.07
    [백준/C] 2884번: 알람 시계  (0) 2024.07.06

    댓글