반복문과 배열의 조합 — for 문을 이용한 배열 순회, 전체 출력과 총합 | 기초 C언어 8.1.3

기초 C언어Chapter 08 배열 › Section 01 1차원 배열

8.1.3 반복문과 배열의 조합

for 문의 제어 변수를 인덱스로 써서 배열의 모든 요소를 차례로 방문. 같은 순회 틀로 전체 출력과 총합 계산을 비교.

교재 수록 위치
교재
『기초 C언어』 · 이은상 · 부크크 · 364쪽
단원
Chapter 08 배열 › Section 01 1차원 배열 › 반복문과 배열의 조합
쪽수
234p ~ 236p3쪽
세부 내용
배열에서 for 문 사용하기 · for 문을 이용한 배열 순회 · CODE 8.3 배열 전체 출력 · CODE 8.4 배열 원소 총합
학습 목표
for 문을 이용한 배열 순회 패턴을 이해하고, 전체 출력과 총합 계산에 적용함
영상 목차 · 원하는 부분부터 보기
  1. 0:00 · 강의 소개와 배열 순회
  2. 2:09 · 인덱스 범위와 반복 조건
  3. 3:12 · 배열 전체 출력
  4. 6:37 · 배열 원소 총합 계산
  5. 9:44 · 핵심 정리

01배열과 for 문의 결합교재 234p

  • 앞 편에서는 인덱스 자리에 변수를 쓸 수 있음을 확인. 이번 편에서는 그 변수를 for 문으로 바꾸며 모든 요소에 순서대로 접근.
  • 배열은 여러 데이터를 저장하고, 반복문은 특정 작업을 여러 번 반복. 둘을 함께 쓰면 모든 요소에 동일한 작업을 매우 효율적으로 수행 가능.
  • 교재의 비유는 아파트 관리인. 101호, 102호의 문을 일일이 여는 대신 ‘101호부터 505호까지 순서대로 방문하라’는 반복문 하나로 처리하는 방식.

02처음부터 끝까지 한 번씩, 순회교재 234p

  • 순회 — 배열의 모든 요소를 처음부터 끝까지 한 번씩 방문하는 것. for 문을 사용하면 순회 패턴을 만들 수 있음.
  • 순회 패턴의 꼴은 for (int i = 0; i < 배열의_크기; i++). 중괄호 안에서 배열이름[i]로 각 요소에 대한 작업을 수행.
  • 초기식 안에서 i를 선언하는 꼴은 C99 표준부터 가능. 교재 예제처럼 i를 미리 선언해 두어도 무방.

03순회 패턴의 세 식교재 234p

식역할
int i = 0;첫 번째 요소의 인덱스인 0에서 시작
i < 배열의_크기;마지막 인덱스(크기 - 1)까지만 반복
i++한 요소의 작업을 마친 뒤 다음 요소로 이동
  • 7장의 for 문은 주로 1에서 시작했지만, 배열을 순회할 때는 인덱스에 맞추어 0에서 시작.

조건식에는 <= 가 아니라 <

i <= 배열의_크기로 쓰면 크기와 같은 인덱스까지 반복하여 존재하지 않는 칸에 접근하게 됨. 크기가 5이면 i는 0부터 4까지만 돌도록 < 를 사용.

04CODE 8.3 — 배열 전체 출력교재 235p

  • CODE 8.3 — scores 배열의 다섯 점수를 for 문 하나로 모두 출력하는 예제. i가 0, 1, 2, 3, 4로 변함에 따라 scores[0]부터 scores[4]까지 순서대로 접근.
  • 실행 결과는 1번 학생의 점수: 90부터 5번 학생의 점수: 92까지 다섯 줄. 반복 한 번에 한 줄씩 출력.
  • 학생 번호는 i + 1로 표시. i의 값은 그대로 두고 1을 더한 수만 넘기는 방식이며, 1부터 세는 사람과 0부터 세는 배열 사이를 맞추는 역할. 상세 코드는 교재 CODE 8.3.

05CODE 8.4 — 배열 원소 총합교재 236p

  • CODE 8.4 — 0으로 초기화한 sum에 sum += scores[i];로 각 칸의 값을 누적하는 예제. 실행 결과는 점수 총합: 444 한 줄.
  • sum은 90, 175, 275, 352를 거쳐 444로 변화. 7.1.2의 합계 누적이 변하는 i 자체를 더했다면, 여기서는 i가 가리키는 칸의 값을 더하는 차이.
  • sum을 0으로 초기화하는 까닭과 += 누적은 7.1.2 내용과 같음. 상세 코드는 교재 CODE 8.4.

크기를 숫자로 적었다면 함께 수정

두 예제의 조건식은 배열의 크기를 숫자 5로 직접 적은 꼴. 배열의 크기를 바꾸면 조건식의 숫자도 함께 고쳐야 없는 칸 접근이나 빠진 칸을 막을 수 있음.

06가장 기본적이자 자주 쓰이는 패턴교재 236p

  • 두 예제의 for 문은 같고, 중괄호 안의 한 줄만 출력 또는 누적으로 바뀐 구조. 반복의 틀은 그대로 두고 각 요소에 할 작업만 교체.
  • for 문과 배열의 조합은 C 프로그래밍에서 데이터를 다루는 가장 기본적이자 자주 쓰이는 패턴. 앞으로 배열을 사용하는 대부분의 작업에서 활용.
  • 한 줄로 늘어선 1차원 배열은 여기까지. 다음 편 8.2.1에서는 행과 열이 있는 2차원 배열을 다룸.

이 절의 핵심 정리

  1. 배열과 for 문을 함께 쓰면 배열의 모든 요소에 동일한 작업을 효율적으로 수행할 수 있다.
  2. 배열 순회는 인덱스 0에서 시작하여 크기보다 작은 동안 반복하며 모든 요소를 한 번씩 방문한다.
  3. 조건식에 크기와 같은 값까지 포함하면 존재하지 않는 요소에 접근하게 된다.
  4. CODE 8.3은 i가 0부터 4까지 변하면서 scores[i]를 차례로 출력하고 학생 번호는 i + 1로 표시한다.
  5. CODE 8.4는 반복할 때마다 scores[i]를 sum에 누적하여 총합 444를 구한다.
강의 자료8.1.3 반복문과 배열의 조합 1 / 11

번호를 누르면 해당 장으로 바로 이동합니다 · 방향키 ← → 로도 넘길 수 있습니다
다음 절 · 8.2.1-1 2차원 배열의 개념과 요소 접근 교재 237p~239p — 1차원 배열을 여러 개 묶어 표처럼 다루는 2차원 배열 ↗

더 자세한 내용은 교재에서

이 글은 『기초 C언어』 234p~236p의 내용을 강의 영상에 맞춰 핵심만 간추린 요약입니다. 각 개념의 상세한 설명과 예제, 실습 코드, 임용시험 기출문제 풀이는 교재에서 다루고 있습니다.

댓글

이 블로그의 인기 게시물

2007년 국가직 9급 기계일반 기출문제 풀이

기계공작법 연습문제 130문 | 임용 기출 영상·교재 쪽수 바로가기