본문 바로가기
개발 노트/백준, 프로그래머스 풀이

[백준 11719/c++] 그대로 출력하기 2

by tokkiC 2022. 6. 24.

문제중에 입력 수가 정해지지 않고 입력을 계속 받는 문제가 있다

한줄이 아니라 여러 줄을 계속 입력 받아서 그대로 출력할 일이 있을 경우

cin.eof() 를 사용하면 된다

파일의 끝을 나타내는 eof() 를 이용해서 cin.eof() 는 현재 입력이 파일의 끝이라는 뜻이다

즉, 파일의 끝이 아니라면 더 입력할 것이 있다는 말이므로 조건부 무한 루프가 가능하다

while( !cin.eof() ) 이렇게 입력하면 파일의 끝에 도달하여 입력할 것이 없을때까지 계속 입력 가능하다

getline(cin, s) 로 그 줄의 공백 기호 모두 입력하여 출력하도록 하였다

앞으로 자주 쓸 방법이다

https://www.acmicpc.net/problem/11719

 

11719번: 그대로 출력하기 2

입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄이 주어질 수도 있고, 각 줄의 앞 뒤에 공백이

www.acmicpc.net

#include <bits/stdc++.h>
using namespace std;

int main(){
    string s;
    while(!cin.eof()){
    	getline(cin, s);
        cout << s << "\n";
    }    
    
    return 0;
}

댓글