Skip to Content
💻 코리아IT아카데미 신촌 - 프로그래밍 학습 자료
C++ 프로그래밍Unit 1: C++ 시작하기Topic 4: 기본 입출력 마스터하기

Topic 4: 기본 입출력 마스터하기 💬

🎯 학습 목표

이번 토픽에서는 컴퓨터와 대화하는 방법을 배웁니다!

  • cout으로 메시지 출력하기
  • cin으로 사용자 입력 받기
  • 다양한 출력 형식 활용하기
  • 간단한 대화형 프로그램 만들기

📤 cout - 컴퓨터가 말하게 하기

cout의 기본 사용법

coutC++ Output의 약자로, 화면에 출력할 때 사용합니다.

#include <iostream> using namespace std; int main() { cout << "안녕하세요!" << endl; cout << "C++의 세계에 오신 것을 환영합니다!" << endl; return 0; }

<< 연산자 이해하기

<<삽입 연산자로, 데이터를 출력 스트림으로 보냅니다.

cout << "첫 번째 " << "두 번째 " << "세 번째" << endl; // 출력: 첫 번째 두 번째 세 번째

물 흐르듯이 데이터가 흘러가는 모습을 상상해보세요! 🌊

endl vs \n

줄바꿈을 하는 두 가지 방법:

// 방법 1: endl 사용 cout << "첫 줄" << endl; cout << "둘째 줄" << endl; // 방법 2: \n 사용 cout << "첫 줄\n"; cout << "둘째 줄\n";

차이점:

  • endl: 줄바꿈 + 버퍼 비우기 (더 안전하지만 느림)
  • \n: 줄바꿈만 (더 빠름)

📥 cin - 사용자의 입력 받기

cin의 기본 사용법

cinC++ Input의 약자로, 키보드 입력을 받을 때 사용합니다.

#include <iostream> using namespace std; int main() { int age; // 숫자를 저장할 공간 (변수라고 부릅니다) cout << "나이를 입력하세요: "; cin >> age; // 키보드로 입력받은 숫자를 age에 저장 cout << "당신은 " << age << "살이군요!" << endl; return 0; }

변수란?

  • 데이터를 담아두는 상자 같은 것입니다
  • int age;는 “정수를 담을 상자를 만들고 이름을 age라고 붙이겠다”는 의미

>> 연산자 이해하기

>>추출 연산자로, 입력 스트림에서 데이터를 가져옵니다.

int num1, num2; cout << "두 숫자를 입력하세요: "; cin >> num1 >> num2; // 한 번에 여러 값 입력 가능 cout << "합계: " << num1 + num2 << endl;

🎨 다양한 출력 형식

숫자와 문자 함께 출력하기

int score = 95; char grade = 'A'; cout << "점수: " << score << "점" << endl; cout << "등급: " << grade << endl; cout << "축하합니다! " << score << "점으로 " << grade << "를 받았습니다!" << endl;

특수 문자 출력하기

cout << "따옴표: \"Hello\"" << endl; // \"로 따옴표 출력 cout << "역슬래시: C:\\Program Files" << endl; // \\로 \ 출력 cout << "탭: 이름\t나이\t성별" << endl; // \t로 탭 출력 cout << "벨소리: \a" << endl; // \a로 소리 출력 (비프음)

🚀 실습: 대화형 프로그램 만들기

간단한 자기소개 프로그램

#include <iostream> using namespace std; int main() { int age; int score; cout << "===== 자기소개 프로그램 =====" << endl; cout << "나이는 몇 살인가요? "; cin >> age; cout << "좋아하는 숫자를 입력하세요: "; cin >> score; cout << "\n===== 결과 =====" << endl; cout << "안녕하세요!" << endl; cout << "당신의 나이는 " << age << "살이군요!" << endl; cout << "좋아하는 숫자는 " << score << "이네요!" << endl; cout << "만나서 반가워요!" << endl; return 0; }

간단한 계산기 프로그램

#include <iostream> using namespace std; int main() { double num1, num2; cout << "===== 간단한 계산기 =====" << endl; cout << "첫 번째 숫자: "; cin >> num1; cout << "두 번째 숫자: "; cin >> num2; cout << "\n===== 계산 결과 =====" << endl; cout << num1 << " + " << num2 << " = " << num1 + num2 << endl; cout << num1 << " - " << num2 << " = " << num1 - num2 << endl; cout << num1 << " × " << num2 << " = " << num1 * num2 << endl; cout << num1 << " ÷ " << num2 << " = " << num1 / num2 << endl; return 0; }

🔍 여러 값 입력 받기

여러 숫자 입력받기

int num1, num2, num3; cout << "세 개의 숫자를 입력하세요: "; cin >> num1 >> num2 >> num3; // 공백으로 구분해서 입력 cout << "입력한 숫자들: " << num1 << ", " << num2 << ", " << num3 << endl;

입력 예시: 10 20 30 (공백으로 구분)

⚠️ 일반적인 실수들

❌ 잘못된 예시 1: 변수 선언 없이 입력

// ❌ 에러! cin >> age; // age가 선언되지 않음

✅ 올바른 예시 1:

int age; // 먼저 변수 선언 cin >> age;

❌ 잘못된 예시 2: 타입 불일치

int number; cout << "숫자를 입력하세요: "; cin >> number; // 사용자가 "abc"를 입력하면 프로그램이 이상하게 동작할 수 있습니다

💡 팔:

항상 숫자를 입력하도록 안내하고, 사용자가 올바른 타입을 입력하도록 명확히 설명하세요. 예: “숫자만 입력하세요 (예: 123):”

💡 퀴즈: 입출력 마스터 테스트

Q1. 다음 코드의 출력 결과는?

cout << "A" << "B" << endl << "C" << "D";

💡 정답 확인

AB CD

endl이 줄바꿈을 수행합니다.

Q2. 사용자가 “10 20”을 입력했을 때 출력은?

int x, y; cin >> x >> y; cout << x + y;

💡 정답 확인

30

cin >> x >> y는 공백으로 구분된 두 숫자를 각각 x와 y에 저장합니다.

🎯 도전 과제

간단한 점수 계산기

다음 기능을 구현해보세요:

  1. 세 과목의 점수 입력
  2. 평균 계산
  3. 결과 출력
// 힌트 구조 int korean, english, math; cout << "국어 점수: "; cin >> korean; cout << "영어 점수: "; cin >> english; cout << "수학 점수: "; cin >> math; cout << "\n===== 성적 결과 =====" << endl; cout << "총점: " << korean + english + math << endl; cout << "평균: " << (korean + english + math) / 3 << endl; // 여기에 코드를 작성해보세요

📝 변수에 대한 간단한 설명

오늘 우리는 변수를 사용했습니다. 변수는 데이터를 저장하는 상자 같은 것입니다.

예를 들어:

int age; // 정수를 담을 상자를 만들고 이름을 age로 지정 age = 20; // 상자에 20이라는 값을 담음 cout << age; // 상자에 담긴 값을 출력

주로 사용한 변수 타입:

  • int: 정수 (소수점 없는 숫자 - 예: 10, -5, 100)
  • double: 실수 (소수점 있는 숫자 - 예: 3.14, -2.5)

더 자세한 변수와 자료형의 세계는 Unit 2: 자료형과 변수에서 깊이 있게 다룰 예정입니다! 🎯

🚀 다음 단계

입출력의 기본을 마스터했으니, 이제 데이터를 다루는 방법을 본격적으로 배울 시간입니다!

Unit 2: 자료형과 변수에서 배울 내용:

  • 다양한 자료형의 특징과 사용법
  • 변수 선언과 초기화
  • 상수와 리터럴
  • 자료형 변환

컴퓨터와 대화하는 법을 배웠으니, 이제 더 복잡한 데이터를 다루는 법을 배워봅시다! 💪

Last updated on