C++ 알고리즘 기초7 -문자,문자열 입력받기-

1. 문자 1개 입력

 

문자 1개 입력은 char 변수를 선언하고, cin을 이용해 넣어준다

 

#include <iostream>
using namespace std;

int main() {
    
    char c;

    cin >> c;
    cout << c;
    
    return 0;
}
A
A

 

2. 문자열 입력받기

 

문자열 1개를 입력받을때는 string을 선언한 변수에 cin을 이용해서 받을 수 있다.

 

string을 이용하기 위해 #include <string>을 상단에 포함시켜준다.

 

안써도 되긴 하던데... 뭔가 이유가 있으니까 쓰라는거겠지.??

 

#include <iostream>
#include <string>
using namespace std;

int main() {
    
    string s;

    cin >> s;
    cout << s;

    return 0;
}
cat
cat

 

3. cin.get()

 

두 수가 공백이 아니라, 특정 문자를 사이에 두고 입력으로 들어오는 경우,

 

예를 들어 50:60이 입력으로 들어올때?

 

int a,c와 char b를 선언하고.. cin >> a >> b >> c;로 선언하면 a에 50 b에 : c에 60이 들어간다.

 

#include <iostream>
using namespace std;

int main() {

	int a, b;
	char c;

	cin >> a >> c >> b;
	cout << a << endl << b;

	return 0;

}

 

혹은 cin.get();을 이용해서.. 중간 문자를 받을 수 있다.

 

cin이 공백이나 개행을 무시하지만, cin.get()은 공백이나 개행도 문자로 취급해서 받으며,

 

문자만 입력받는다는 특징이 있다.

 

예를 들어 Q R을 입력하면.. cin.get(a); cin.get(b); cin.get(c);로 받을때..

 

a에는 Q, b에는 공백, c에는 R이 들어

 

[C++] 표준 입력 함수 cin, cin.get(), cin.getline() (tistory.com)

 

[C++] 표준 입력 함수 cin, cin.get(), cin.getline()

1. cin => 에 존재 => 표준 입력 버퍼에서 개행 문자를 제외한 값을 가져옴 => 공백, 개행 무시 => 개행 키보드 버퍼에 남겨둠 => space 단위로 끊어서 입력 받을 수 있다 cin은 문자와 문자열 모두 입력

luyin.tistory.com

 

#include <iostream>
using namespace std;

int main() {
    
    int a,b;

    cin >> a;
    cin.get();
    cin >> b;

    cout << a+1 << ":" << b;
    
    return 0;
}
1:59
2:59

 

4. 연습문제

 

010-xxxx-yyyy 형태의 전화번호를 입력받아 앞 4자리와 뒤 4자리를 바꾸어 출력하는 프로그램을 작성해보세요.

 

#include <iostream>
using namespace std;

int main() {
    
    int a,b,c;
    char d;

    cin >> a >> d >> b >> d >> c;

    cout << '0' << a << d << c << d << b;

    return 0;
}

 

int a로 010을 받으면.. 앞에 0이 빠지고 10만 들어오기 때문에, a를 출력하기 전에 '0'을 붙여준다

 

 

TAGS.

Comments