[백준] 9498, 조건문

YUN·2025년 9월 8일

C++

목록 보기
10/79

조건문 문제이다.

풀이방법은 iostream, cstdio, stdio.h가 있다.

iostreamstdio.h로 풀어볼 것이다.

1. <iostream>

#include <iostream>

using namespace std;

int main() {
    int a;
    cin >> a;
    if (a>=90) {
        cout << 'A';
    } else if (a>=80) {
        cout << 'B';
    } else if (a>=70) {
        cout << 'C';
    } else if (a>=60) {
        cout << 'D';
    } else {
        cout << 'F';
    }
    
    
    return 0;
}

오답노트

(1) 효율적인 조건문 작성법을 알지못했다.

처음에

#include <iostream>

using namespace std;

int main() {
    int a;
    cin >> a;
    
    if(a>=90 && a<=100) {
        cout << 'A';
    } else if (a>=80 && a<=89) {
        cout << 'B';
    } else if (a>=70 && a <=79) {
        cout << 'C'; 
    } else if (a>=60 && a <=69) {
        cout << 'D';
    } else {
        cout << 'F';
    }
    
    
    return 0;
}

이런식으로 코드를 짰다.

생각해보니 a>=80 && a<=89 와같은 식으로 조건문을 작성할 필요가없었다.

그냥 a>=90, a>=80, a>=70 ... 만 해주면 알아서 다 필터링이되고 a<=100, a<=90,... 과 같은 조건들은 사실상 필요가없다.

다음부터 이런식으로 효율적으로 조건문을 작성하는 연습을 해야겠다.

2. <stdio.h>

#include <stdio.h>

int main() {
    int a;
    scanf("%d", &a);
    
    if (a>=90) {
        printf("A");
    } else if (a>=80) {
        printf("B");
    } else if (a>=70) {
        printf("C");
    } else if (a>=60) {
        printf("D");
    } else {
        printf("F");
    }
    
    
}

오답노트

(1) printf 사용 미숙

printf의 인자로 char 데이터를 전달하면안된다.

문자열(char [])을 전달해줘야한다.

다시말해서,

printf('a'); 는 안돼지만, printf("a"); 는 된다.

printf 사용법을 잘 숙지하고있어야겠다.

profile
안녕하세요. 전자공학부 학부생의 공부 기록입니다.

0개의 댓글