반응형
코드
#include <iostream>
#include <string>
#include <cctype> //isupper, islower, isdigit, isspace 등등 <cctype>에 포함.
using namespace std;
int main() {
string s;
getline(cin, s);
for(int i=0; i<s.length(); i++){
if(isupper(s[i])){
s[i]=tolower(s[i]); // 대문자를 소문자로 변환
//s[i] += 32;
}
else if(islower(s[i])){
s[i]=toupper(s[i]); // 소문자를 대문자로 변환
//s[i] -= 32;
}
}
cout<<s;
}
/* 아스키 코드범위
- 대문자 x>=65 && x<=90
- 소문자 x>=97 && x<=122
- 숫자 x>=48 && x<=57
*/
|
cs |
isdigit : 숫자인지 판별
isspace : 공백인지 판별
isupper : 대문자인지 판별
islower : 소문자인지 판별
isalpha : 알파벳인지 판별
대문자에서 소문자 : tolower함수를 사용하거나 32를 더한다.
소문자에서 대문자 : toupper함수를 사용하거나 32를 뺀다.
반응형
'개인공부' 카테고리의 다른 글
BYTE[], BYTE* <----> std::sring (c++) (0) | 2022.12.12 |
---|---|
문자열 뒤집기 c++ (0) | 2022.01.14 |
[BaeKJoon/Code up/C++] 별 찍기 응용 (0) | 2021.11.14 |
백준 2798(참고) 개인공부 ----c++ (0) | 2021.07.31 |
학생명단 (0) | 2021.07.13 |