본문 바로가기
C/Baekjoon

[BOJ] SISS 겨울방학 스터디 - 2주차

by 단월໒꒱ 2022. 1. 8.

#1546

 

[문제]

 

 

 

[코드]

 

#include <stdio.h>

int main() {
    int N;
    float average, max = 0, sum = 0;
    
    scanf("%d", &N);
    
    int score[N];
    
    for (int i = 0; i < N; i++) {
        scanf("%d", &score[i]);
        
        if (score[i] > max) max = score[i];
    }
    
    for (int i = 0; i < N; i++) {
        sum += score[i] / max * 100;
    }
    
    average = sum / N;
    
    printf("%f\n", average);
    
    return 0;
}

 

 

[설명]

시험 본 과목의 개수 N, 입력받을 점수를 저장할 배열 score을 정수로 선언해준다.

평균 average, 최대값 max, 합 sum은 float형으로 선언해주었고 필요한 변수는 0으로 초기화했다.

N을 입력받으면 입력받은 N만큼 또 수를 입력 받아 score라는 배열에 하나씩 저장하도록 한다.

배열에 수를 저장하는 동시에 max값과 비교를 하며 배열에 저장된 값들 중 가장 큰 값이 max에 저장되도록 한다.

세준이가 점수를 계산한다는 방식에 따라 점수를 계산해서 sum에 하나씩 값을 더해준다.

이렇게 구한 sum을 과목 수 N으로 나눠 평균 average를 구한다.

마지막으로 구한 평균을 출력해준다.

 

전체적으로 코드를 구성하는 건 어렵지 않았는데 마지막에 average, sum, max 등등 연산을 할 때 어느쪽까지 정수형이어야 하고 실수형이어야 하는지 헷갈려서 조금 헤맸었다. 아무생각 없이 하다보니 헤맸던 거 같은데 지금 와서 생각해보면 여기서 왜 헤맸나 싶다... 실수가 정수보다 더 크게 커버하므로 연산에 실수가 적어도 하나 들어가면 값도 실수가 나온다는 점 기억하자.

 

 

 

#2438

 

[문제]

 

 

 

[코드]

 

#include <stdio.h>

int main() {
    int N;
    
    scanf("%d", &N);
    
    for (int i = 1; i <= N; i++) {
        for (int j = 1; j <= i; j++) printf("*");
        
        printf("\n");
    }
    return 0;
}

 

 

[설명]

이 문제는 단순하게 별을 n번째 줄에 n개 출력하는 문제이다.

줄 수 N을 정수로 선언한 뒤 scanf로 수를 입력받도록 해준다.

반복문을 중첩하여 원하는대로 별을 찍어준 뒤 한 줄이 끝날 때마다 줄바꿈을 넣어준다.

 

 

 

#2439

 

[문제]

 

 

 

[코드]

 

#include <stdio.h>

int main() {
    int N;
    
    scanf("%d", &N);
    
    for (int i = 1; i <= N; i++) {
        for (int j = 1; j <= N - i; j++) printf(" ");
        for (int j = 1; j <= i; j++) printf("*");
        
        printf("\n");
    }
    return 0;
}

 

 

[설명]

이 문제는 앞선 문제와 달리 별을 n번째 줄에 n개 출력하는데, 뒤에서부터 별을 찍도록 하고 있다.

줄 수 N을 정수로 선언한 뒤 scanf로 수를 입력받도록 해준다.

반복문을 중첩하여 원하는대로 별을 찍어주는데, 입력받은 수가 N이면 n번째 줄에서 N-n 만큼 공백을 출력하고 n만큼 별을 찍도록 한다.

이렇게 한 줄이 완성되면 줄이 끝날 때마다 줄바꿈을 넣어준다.

 

 

 

'C > Baekjoon' 카테고리의 다른 글

[BOJ] SISS 겨울방학 스터디 - 4주차  (0) 2022.01.22
[BOJ] SISS 겨울방학 스터디 - 3주차  (0) 2022.01.14
[BOJ] 1주차 - #1157  (0) 2022.01.02
[BOJ] 1주차 - #1330  (0) 2022.01.02
[BOJ] 1주차 - #1152  (0) 2022.01.02

댓글