c++에서 cin이 정상적으로 실행되지 않는 이유?

조회수 2296회

cin을 사용하여 입력할 이름의 개수와 이름을 입력하고 이를 출력하는 간단한 코드 입니다.

그런데 main 3번째 줄에서 cin >> n부분을 추가하면 제 의도와는 다르게 그 다음의 for문에서 1회의 cin이 받아지지 않습니다.

왜 그러는 건가요??

cin>>n 에서 입력할 이름의 개수를 받지 않으면 정상작동합니다.

include

include

using namespace std;

int main() { int n = 5; cout << "몇 명의 이름을 입력 하시겠습니까?" << endl; cin >> n;

string *names = new string[n];
for (int i = 0; i < n; i++) {
    cout << "이름 >> ";
    getline(cin, names[i], '\n');
}

string latter = names[0];
for (int i = 1; i < n; i++) {
    if (latter < names[i]) {
        latter = names[i];
    }
}

for (int i = 0; i < n; i++) {
    cout << names[i] << endl;
}

}

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)