Company
교육 철학

LV12 문자열, 문자열의 길이, 2중for문 활용

C++ 문자열과 2차원 배열

문자열의 개념

문자란 한 글자를 뜻하며, 작은 따옴표('A')로 표현한다.
문자열은 하나 이상의 문자가 연속된 묶음이며 큰 따옴표("Hello")로 표현한다.
문자열은 반드시 끝에 널문자(\0)가 포함되어야 하며, 컴퓨터는 이 널문자를 통해 문자열의 끝을 판단한다.

문자열 메모리 구조 예시

문자열의 길이를 구하는 함수

문자열의 원리를 이해하면 제일 마지막에 널문자를 활용해 문자열의 길이도 구할 수 있다.
#include <iostream> char str[256] = "Hello World!!!"; int yaStrLen() { for (int i = 0; i < 256; i++) { if (str[i] == '\0') return i; } return -1; } int main() { int len = yaStrLen(); std::cout << "문자열 길이: " << len; return 0; }
C++
복사

출력 결과

문자열 길이: 13
Plain Text
복사

2차원 배열과 문자열

2차원 배열은 문장(문자열) 여러 개를 저장할 수 있다.
행(row)은 각 문장을 나타내고, 열(column)은 각 문장의 문자들을 의미한다.

예제 코드: 여러 문장을 저장하는 2차원 배열

#include <iostream> int main() { char str2D[3][5] = { "ABC", "DEF", "HIJ" }; std::cout << str2D[0] << std::endl; // 첫 번째 문장 출력 std::cout << str2D[1] << std::endl; // 두 번째 문장 출력 std::cout << str2D[2] << std::endl; // 세 번째 문장 출력 std::cout << str2D[0][1] << std::endl; // 하나의 문자 출력 (B) std::cin >> str2D[0]; // 첫 번째 문장에 입력 받기 std::cout << str2D << std::endl; // 주소 출력 return 0; }
C++
복사

출력 예시

ABC DEF HIJ B (입력값) (주소값)
Plain Text
복사

2중 for문과 2차원 배열 활용

2차원 배열에 규칙적으로 값을 채우기 위해 중첩 반복문(for문)을 사용한다.

예제 코드: 숫자 채우기

#include <iostream> int main() { int arr[3][3] = { }; int num = 1; for (int y = 0; y < 3; y++) { for (int x = 2 - y; x < 3; x++) { arr[y][x] = num; num++; } } for (int y = 0; y < 3; y++) { for (int x = 0; x < 3; x++) { std::cout << arr[y][x] << " "; } std::cout << std::endl; } return 0; }
C++
복사

출력 결과

0 0 1 0 2 3 4 5 6
Plain Text
복사

“강의는 많은데, 왜 나는 아직도 코드를 못 짤까?”

혼자 공부하다 보면 누구나 이런 고민을 하게 됩니다.
강의는 다 들었지만 막상 손이 안 움직이고,
복습을 하려 해도 무엇을 다시 봐야 할지 모르겠고,
질문할 곳도 없고,
유튜브는 결국 정답을 따라 치는 것밖에 안 되는 것 같고.
문제는 ‘연습’이 빠졌기 때문입니다.
단순히 강의를 듣는 것만으로는 실력이 늘지 않습니다.
실제 문제를 풀고, 고민하고, 직접 구현해보는 시간이 반드시 필요합니다.

그래서, 얌얌코딩 코칭은 다릅니다.

그냥 가르치지 않습니다.
스스로 설계하고, 코딩할 수 있게 만듭니다.
얌얌코딩 코칭에서는 단순한 예제가 아닌,
스스로 문제를 분석하고 구현해야 하는 연습문제를 제공합니다.
이 연습문제들은 다음과 같은 역량을 키우기 위해 설계되어 있습니다:
문제를 스스로 쪼개고 설계하는 힘
다양한 조건을 만족시키는 실제 구현 능력
기능 단위가 아닌, 프로그램 단위로 사고하는 습관
마침내 자신의 힘으로 코드를 끝까지 작성하는 경험

지금 필요한 건 더 많은 강의가 아닙니다.

코드를 스스로 완성해 나가는 훈련,
그것이 지금 실력을 끌어올릴 가장 현실적인 방법입니다.
자세한 안내 보기: 프리미엄 코칭 안내 바로가기
또는 카카오톡 상담방: 얌얌코딩 상담방