본문 바로가기

PS/BOJ

[C++] BOJ (백준) 2744 : 대소문자 바꾸기

문제

2744번: 대소문자 바꾸기 (acmicpc.net)

 

2744번: 대소문자 바꾸기

영어 소문자와 대문자로 이루어진 단어를 입력받은 뒤, 대문자는 소문자로, 소문자는 대문자로 바꾸어 출력하는 프로그램을 작성하시오.

www.acmicpc.net

코드
#include <iostream>

using namespace std;

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);

    string s;
    cin >> s;

    for (char &c : s) {
        if (isupper(c)) c = tolower(c);
        else c = toupper(c);
    }
    
    cout << s;
    return 0;
}

 

설명

대문자일 경우 소문자로, 소문자일 경우 대문자로 바꿔 출력한다.
string 은 range-based for 문을 사용해 각각의 char 에 접근할 수 있다.