문제
리뷰
오늘의 교훈은... 문자 초기화를 제대로 하자!!! 였다.
ROT13 문제를 풀고나서 비슷하길래 자신있게 풀었는데,
int lower=0, upper=0, num=0, space=0; // 이렇게 초기화 해야하는데.
int lower, upper, num, space=0; // 이렇게 해서. 대여섯번을 뭐가 잘못됬나 헤맸다.
지역변수는 초기화를 잘 하자.
코드
#include <iostream>
#include <string>
using namespace std;
int main () {
string s;
while(getline(cin, s)){ // 공백 포함한 문자열 받을 때는 getline이 좋다.
int lower=0, upper=0, num=0, space=0; // 초기화를 잘 하자.
for(int i = 0; i < s.length(); i++){
if(islower(s[i]) ) lower++;
else if(isupper(s[i]) ) upper++;
else if(isdigit(s[i]) ) num++;
else if(' ' == s[i]) space++;
}
printf("%d %d %d %d\n", lower, upper, num, space);
}
return 0;
}
728x90
'알고리즘 > 백준' 카테고리의 다른 글
암호 만들기 백준 1759번 (0) | 2020.08.27 |
---|---|
단어뒤집기 백준 9093번 (0) | 2020.08.27 |
접미사 배열 백준 11656번 (0) | 2020.08.27 |
네 수 백준 10824 (0) | 2020.08.27 |
ROT13 백준 11655 (0) | 2020.08.27 |