4주차: 배열과 문자열 + 포인터와 메모리 기초


학습 주제

1차원 배열, 2차원 배열 ,문자열 ,포인터 선언 ,주소 연산자 ,역참조

핵심 포인트


예제 코드

배열

#include

int main() { // 1차원 배열 int scores[5] = {85, 92, 78, 95, 88}; int sum = 0; for (int i = 0; i < 5; i++) { sum += scores[i]; } printf("평균: %.1f\n", (float)sum / 5);

// 2차원 배열 (행렬)
int matrix[2][3] = {{1, 2, 3}, {4, 5, 6}};
for (int i = 0; i < 2; i++) {
    for (int j = 0; j < 3; j++) {
        printf("%d ", matrix[i][j]);
    }
    printf("\n");
}
return 0;

}

실행 결과

평균: 87.6 1 2 3 4 5 6

포인터

#include <stdio.h>

int main() { int num = 42; int *ptr = # // 포인터 선언 및 주소 저장

printf("num의 값: %d\n", num);
printf("num의 주소: %p\n", &num);
printf("ptr이 가리키는 값: %d\n", *ptr);  // 역참조

*ptr = 100;  // 포인터로 값 변경
printf("변경 후 num: %d\n", num);
return 0;

}

실행 결과

num의 값: 42 num의 주소: 0x7fff... ptr이 가리키는 값: 42 변경 후 num: 100