반응형
https://www.acmicpc.net/problem/11718
- 문제
해설
c - 공백을 포함하여 받기 위해 char 단위로 받아 공백, 줄바꿈(char로 입력 받을 수 있다)을 하나하나 입력 받는다.
scanf함수는 반환값이 존재하는데, 입력된 필드 수를 반환한다. 입력의 종료 지점을 만났을 때 파일의 끝을 의미하는 EOF를 반환한다.
이를 활용하여 반복문의 종료 지점을 정의할 수 있다.
c++ - getline(cin, 문자열 변수) 함수를 이용하여 공백을 포함한 한 줄을 입력 받아, 파라미터로 입력된 변수에 저장한다.
입력된 값이 없을 경우 ""로 저장므로 이를 활용하여 반복문 종료 지점을 정의할 수 있다.
코드
c
#include <stdio.h>
int main() {
char c;
while(scanf("%c", &c) != EOF) {
printf("%c", c);
}
return 0;
}
c++
#include <iostream>
using namespace std;
int main() {
string s;
while(true) {
getline(cin, s);
if(s == "") break;
cout << s << '\n';
}
return 0;
}
반응형
'알고리즘 > 백준 문제 풀이' 카테고리의 다른 글
[BOJ/백준] 10988번 팰린드롬인지 확인하기 - [c/c++] 풀이 (0) | 2023.05.25 |
---|---|
[BOJ/백준] 2444번 별 찍기-7 - [c/c++] 풀이 (0) | 2023.05.13 |
[BOJ/백준] 9086번 문자열 - [c/c++] 풀이 (2) | 2023.05.12 |
[BOJ/백준] 2743번 단어 길이 재기 - [c/c++] 풀이 (0) | 2023.05.12 |
[BOJ/백준] 27866번 문자와 문자열 - [c/c++] 풀이 (0) | 2023.05.12 |
댓글