문법 · C · beginner

C 타입·배열·반복

int/long, 고정 배열, for 루프 기본.

배우기 · C 실험 기초 · 14분 · 2/6 · c

이 트랙 목차 (6)
  1. 1. C 실험: main과 입출력 감각
  2. 2. C 타입·배열·반복
  3. 3. 포인터 감각: 주소·배열·decay
  4. 4. C 문자열: null 종료와 길이
  5. 5. 구조체 맛보기: 묶음과 배열
  6. 6. 반복과 간단한 입출력

정수 타입

문제 규모에 따라 int로 부족한 합은 long long을 검토합니다.

long long sum = 0;
for (int i = 0; i < n; i++) {
  sum += a[i];
}

배열

int a[100];
int n = 3;
a[0] = 1; a[1] = 2; a[2] = 3;

길이를 넘기면 미정의 동작입니다.
동적 할당(malloc)은 실험에서 필요할 때만, 해제를 잊지 마세요.

문자열

C 문자열은 char[] + \0.
strlen, strcmp<string.h>.

컴파일 오류를 읽기

실험장 메시지를 위에서부터 고칩니다.
한 오류가 연쇄로 이어지는 경우가 많습니다.

배열과 포인터 감각

a[i]는 사실 *(a+i)와 같습니다.
실험 단계에서는 고정 크기 배열 + 길이 변수 n만으로도 충분합니다.

#define MAXN 1000
int a[MAXN];

입력이 MAXN을 넘을 수 있으면 먼저 검증하세요.

for 루프

for (int i = 0; i < n; i++) {
  sum += a[i];
}

C99 이상에서 forint i 선언이 가능합니다. 컴파일 옵션에 따라 다를 수 있으니 오류가 나면 루프 밖으로 빼세요.

문자열 버퍼

char buf[256];
fgets(buf, sizeof buf, stdin);

gets는 쓰지 마세요. 버퍼 오버플로 위험이 큽니다.

실험장에서 할 일

  1. 정수 N개 합
  2. 문자열 길이 출력
  3. 두 배열 원소를 맞교환하는 함수

채점 문제 목록에는 아직 C가 없을 수 있습니다. 문법을 익히는 용도입니다.

연습

고정 길이 배열에 1..n을 채운 뒤 합을 printf로 확인하세요. 길이는 n 변수와 같이 다루세요.

더 깊게

읽은 뒤 연습장에서 예제 코드를 한 번 타이핑해 보세요. 눈으로만 보면 하루 뒤 사라집니다.

관련 원리 카드와 문제 태그로 바로 이어서 풀면, 문법·패턴이 한 묶음으로 남습니다.

막히면 30분 규칙: 입력을 로그로 확인 → 기대/실제 한 줄 비교 → 그래도 안 되면 배우기 레슨으로 잠시 복귀.

관련 짧은 원리

관련 문제