인기여정
C 프로그래밍 배우기
C 프로그래밍을 처음부터 배우는 무료 온라인 강의입니다. 실습 과제, 실제 프로젝트, AI 힌트, 수료증과 함께 변수, 조건문, 반복문, 함수, 자료구조, 프로젝트 구조를 익힙니다.
114,799+ 명의 codders가 등록함
이 여정에 포함된 내용
AI 코딩 도우미
실습 중심의 대화형 강의
모든 레슨에 음성 나레이션 제공
지식을 확인하는 퀴즈
무료 수료증
커리큘럼
3 섹션187 개 강의163 챌린지1,042 퀴즈 문제01섹션 1
Fundamentals
Build a strong foundation with essential concepts and basic skills학습 시작소개
4 개 강의326- 01C 언어챌린지
- 02Hello World!챌린지퀴즈오디오
- 03주석퀴즈오디오
- 04프로그램의 기본 구조챌린지퀴즈오디오
변수
11 개 강의1485- 01자료형챌린지퀴즈오디오
- 02정수형챌린지퀴즈오디오
- 03실수형 (Float - Double)챌린지마스터리퀴즈오디오
- 04문자형챌린지퀴즈오디오
- 05불리언챌린지마스터리퀴즈오디오
- 06상수챌린지퀴즈오디오
- 07printf 기초챌린지퀴즈오디오
- 08변수 명명 규칙챌린지퀴즈오디오
- 09형 변환 파트 1챌린지마스터리퀴즈오디오
- 10형 변환 파트 2챌린지퀴즈오디오
- 11복습 챌린지챌린지
연산자
9 개 강의1161- 01산술 연산자챌린지퀴즈오디오
- 02나머지 연산자챌린지마스터리퀴즈오디오
- 03증감 연산자챌린지퀴즈오디오
- 04대입 연산자챌린지퀴즈오디오
- 05관계 연산자챌린지퀴즈오디오
- 06논리 연산자 파트 1챌린지퀴즈오디오
- 07논리 연산자 파트 2챌린지퀴즈오디오
- 08논리 연산자 파트 3챌린지마스터리퀴즈오디오
- 09요약 챌린지챌린지
제어 흐름
7 개 강의944- 01If 문챌린지퀴즈오디오
- 02If - Else 문챌린지퀴즈오디오
- 03Else-If 문챌린지마스터리퀴즈오디오
- 04Switch Case 문챌린지마스터리퀴즈오디오
- 05삼항 조건 연산자챌린지퀴즈오디오
- 06복습 챌린지챌린지
- 07중첩 If - Else 문챌린지퀴즈오디오
입출력
5 개 강의626- 01형식 지정자챌린지퀴즈오디오
- 02scanf 기초챌린지마스터리퀴즈오디오
- 03복습 챌린지 #1챌린지
- 04입력 유효성 검사챌린지퀴즈오디오
- 05복습 챌린지 #2챌린지
반복문
9 개 강의1053- 01For 반복문챌린지마스터리퀴즈오디오
- 02While 반복문챌린지퀴즈오디오
- 03Do While 반복문챌린지퀴즈오디오
- 04Break챌린지퀴즈오디오
- 05Continue챌린지퀴즈오디오
- 06복습 챌린지 #1챌린지
- 07중첩 반복문챌린지마스터리퀴즈오디오
- 08무한 루프퀴즈오디오
- 09복습 챌린지 #2챌린지
함수
7 개 강의1039- 01함수 선언하기챌린지퀴즈오디오
- 02반환 타입챌린지마스터리퀴즈오디오
- 03매개변수챌린지마스터리퀴즈오디오
- 04복습 챌린지 #1챌린지
- 05재귀 기초챌린지마스터리퀴즈오디오
- 06함수 프로토타입챌린지퀴즈오디오
- 07복습 챌린지 #2챌린지
배열
8 개 강의1247- 01배열 선언하기챌린지퀴즈오디오
- 02요소에 접근하기챌린지퀴즈오디오
- 03요소 수정하기챌린지마스터리퀴즈오디오
- 04다차원 배열챌린지마스터리퀴즈오디오
- 05복습 챌린지 #1챌린지
- 06함수 인자로서의 배열챌린지마스터리퀴즈오디오
- 07배열 알고리즘챌린지마스터리퀴즈오디오
- 08복습 챌린지 #2챌린지
최종 도전 과제
3 개 강의3- 01성적챌린지
- 02산봉우리챌린지
- 03TV챌린지
02섹션 2
Logic & Flow
Master advanced C programming with a focus on data structures and flow control. Learn to work with complex arrays, collections, error handling, and time management.학습 시작포인터 기초
6 개 강의540- 01포인터란 무엇인가요?퀴즈
- 02포인터 선언하기챌린지퀴즈
- 03주소 연산자 (&)챌린지퀴즈
- 04역참조 연산자 (*)챌린지퀴즈
- 05NULL 포인터챌린지퀴즈
- 06요약: 포인터 기초챌린지
포인터와 배열
5 개 강의531- 01포인터로서의 배열 이름챌린지퀴즈
- 02배열 요소와 포인터챌린지퀴즈
- 03포인터 연산챌린지퀴즈
- 04포인터 비교챌린지퀴즈
- 05요약: 포인터를 이용한 배열 순회챌린지
문자 배열과 문자열
8 개 강의858- 01char 배열로서의 문자열챌린지퀴즈
- 02널 종료 문자챌린지퀴즈
- 03scanf를 이용한 문자열 입력챌린지퀴즈
- 04strlen() 사용하기챌린지퀴즈
- 05strcpy() 사용하기챌린지퀴즈
- 06strcat() 사용하기챌린지퀴즈
- 07strcmp() 사용하기챌린지퀴즈
- 08요약: 기본 문자열 함수챌린지
프로젝트: 간단한 텍스트 유틸리티
프로젝트5 개 강의1- 01프로젝트 개요챌린지
- 02글자 수 세기프로젝트
- 03모음 개수 세기프로젝트
- 04대문자로 변환하기프로젝트
- 05최종 출력프로젝트
포인터와 함수
6 개 강의641- 01값에 의한 전달챌린지퀴즈
- 02함수에 포인터 전달하기챌린지퀴즈
- 03포인터를 통한 변수 수정챌린지퀴즈
- 04고전적인 예제: Swap챌린지퀴즈
- 05함수에 배열 전달하기챌린지퀴즈
- 06요약: 함수 포인터 인자챌린지
메모리 관리
7 개 강의652- 01스택 vs 힙 메모리퀴즈
- 02동적 할당 - malloc()챌린지퀴즈
- 03할당을 위한 sizeof() 사용챌린지퀴즈
- 04할당 실패 확인챌린지퀴즈
- 05free()를 이용한 메모리 해제챌린지퀴즈
- 06calloc()을 이용한 할당챌린지퀴즈
- 07요약: 동적 배열챌린지
구조체 (structs)
6 개 강의540- 01구조체란 무엇인가요?퀴즈
- 02구조체 선언하기챌린지퀴즈
- 03구조체 변수 생성하기챌린지퀴즈
- 04구조체 멤버에 접근하기챌린지퀴즈
- 05구조체 초기화하기챌린지퀴즈
- 06요약: 학생 데이터 구조체챌린지
구조체와 포인터
6 개 강의643- 01구조체 포인터챌린지퀴즈
- 02화살표 연산자 (->)챌린지퀴즈
- 03값에 의한 구조체 전달챌린지퀴즈
- 04구조체 포인터 전달챌린지퀴즈
- 05구조체의 동적 할당챌린지퀴즈
- 06복습: 구조체 수정 - 포인터챌린지
프로젝트: 간단한 연락처 입력
프로젝트5 개 강의1- 01프로젝트: 연락처 구조체 정의하기챌린지
- 02연락처 생성 함수프로젝트
- 03연락처 데이터 채우기 함수프로젝트
- 04연락처 출력 함수프로젝트
- 05하나로 합치기프로젝트
열거형(Enum)과 Typedef
6 개 강의640- 01명명된 상수를 위한 enum챌린지퀴즈
- 02열거형(Enum) 선언과 사용챌린지퀴즈
- 03Switch 문에서의 열거형(Enum) 활용챌린지퀴즈
- 04타입 별칭을 위한 typedef 사용챌린지퀴즈
- 05구조체와 typedef챌린지퀴즈
- 06요약: Typedef와 열거형(Enum) 실습챌린지
최종 복습 챌린지
3 개 강의3- 01복습: 동적 문자열 연결챌린지
- 02복습: 구조체 배열챌린지
- 03복습: 단어 빈도수 카운터챌린지
03섹션 3
Object Oriented Programming
Discover how to organize code with classes, objects, and reusable structures학습 시작모듈형 프로그래밍 기초
5 개 강의433- 01헤더 파일퀴즈
- 02인클루드 가드챌린지퀴즈
- 03소스 파일챌린지퀴즈
- 04정적 함수챌린지퀴즈
- 05요약: 모듈형 계산기챌린지
객체와 메서드
6 개 강의642- 01객체로서의 Struct챌린지퀴즈
- 02'Self' 포인터챌린지퀴즈
- 03Const 정확성챌린지퀴즈
- 04포인터 vs 값챌린지퀴즈
- 05헬퍼 메서드챌린지퀴즈
- 06요약: Point Manager챌린지
객체 생명 주기
5 개 강의533- 01생성자 패턴챌린지퀴즈
- 02소멸자 패턴챌린지퀴즈
- 03스택 초기화챌린지퀴즈
- 04깊은 복사챌린지퀴즈
- 05요약: String Wrapper챌린지
캡슐화
5 개 강의435- 01불투명 포인터 개념퀴즈
- 02불투명 구조체 정의하기챌린지퀴즈
- 03게터와 세터챌린지퀴즈
- 04세터에서의 유효성 검사챌린지퀴즈
- 05요약: 비밀 상자챌린지
프로젝트: 간단한 은행 계좌
프로젝트6 개 강의1- 01프로젝트 설정챌린지
- 02계좌 구현하기프로젝트
- 03입금 로직프로젝트
- 04출금 로직프로젝트
- 05잔액 조회하기프로젝트
- 06프로젝트 마무리: 메인 루프프로젝트
합성을 통한 상속
5 개 강의531- 01구조체 임베딩챌린지퀴즈
- 02첫 번째 멤버 규칙챌린지퀴즈
- 03부모 멤버 접근하기챌린지퀴즈
- 04업캐스팅챌린지퀴즈
- 05요약: 도형 계층 구조챌린지
함수 포인터
5 개 강의534- 01함수 포인터 선언챌린지퀴즈
- 02함수 포인터 호출챌린지퀴즈
- 03함수 포인터를 위한 Typedef챌린지퀴즈
- 04함수를 인자로 전달하기챌린지퀴즈
- 05요약: 계산기 디스패치챌린지
다형성
6 개 강의641- 01구조체 내의 함수 포인터챌린지퀴즈
- 02메서드 시뮬레이션챌린지퀴즈
- 03인터페이스의 개념챌린지퀴즈
- 04인터페이스 구현하기챌린지퀴즈
- 05다형적 순회챌린지퀴즈
- 06요약: Greeter챌린지
프로젝트: 도형 그리기
프로젝트5 개 강의1- 01프로젝트 개요챌린지
- 02원 구현프로젝트
- 03사각형 구현프로젝트
- 04다형성 활용프로젝트
- 05도형 컨테이너프로젝트
제네릭 컨테이너
5 개 강의534- 01Void 포인터 복습챌린지퀴즈
- 02제네릭 래퍼챌린지퀴즈
- 03제네릭 스왑챌린지퀴즈
- 04제네릭 비교챌린지퀴즈
- 05복습: 제네릭 배열챌린지
C 디자인 패턴
4 개 강의425- 01싱글톤 패턴챌린지퀴즈
- 02팩토리 패턴챌린지퀴즈
- 03이터레이터 패턴챌린지퀴즈
- 04요약: Logger Factory챌린지
최종 도전 과제
4 개 강의48- 01RPG 캐릭터챌린지
- 02동적 문자열 빌더챌린지
- 03제네릭 스택챌린지
- 04이벤트 시스템챌린지퀴즈
Coddy에서 C 프로그래밍을 배우는 이유
- 무료 온라인 C 프로그래밍 강의입니다. 설치나 환경 설정 없이 브라우저에서 첫 레슨부터 바로 연습할 수 있습니다.
- C 프로그래밍 레슨은 단순 튜토리얼이 아닙니다. 각 개념마다 직접 코드를 작성하는 과제가 있어 실습으로 이해합니다.
- C 프로그래밍 연습 문제에서 막히면 AI 힌트가 정답을 그대로 주지 않고 다음 단계의 사고 과정을 도와줍니다.
- C 프로그래밍 과정을 마치면 LinkedIn이나 이력서에 추가할 수 있는 무료 수료증을 받을 수 있습니다.
C 프로그래밍 학습에 대한 자주 묻는 질문
C 프로그래밍은 배우기 쉬운가요?
네. 경험이 없어도 C 프로그래밍을 시작할 수 있습니다. Coddy는 짧은 연습 문제로 나누어 문법을 이해하고 변수, 조건문, 반복문, 함수, 자료구조, 프로젝트 구조를 연습하며 자신감을 쌓게 합니다.
C 프로그래밍을 배우는 데 얼마나 걸리나요?
C 프로그래밍의 기초는 매일 연습하면 보통 1~2주 안에 익힐 수 있습니다. 실제 프로젝트를 편하게 만들려면 속도에 따라 1~3개월 정도를 잡는 것이 좋습니다.
C 프로그래밍을 온라인에서 무료로 배울 수 있나요?
Coddy는 C 프로그래밍 무료 온라인 강의를 제공합니다. 레슨, 코딩 과제, 퀴즈, 프로젝트가 있으며 모든 것이 브라우저에서 실행됩니다.
C 프로그래밍을 빠르게 배우려면 어떻게 해야 하나요?
가장 빠른 방법은 매일 직접 작성하는 것입니다. Coddy에서는 짧은 설명 뒤 바로 실습하고 AI 힌트로 피드백을 받기 때문에 긴 영상보다 실습 시간이 많습니다.
완료하면 C 프로그래밍 수료증을 받나요?
네. Coddy에서 C 프로그래밍 과정을 완료하면 LinkedIn이나 이력서에 추가할 수 있는 무료 수료증을 받습니다.
C 프로그래밍을 배운 뒤 무엇을 만들 수 있나요?
강의를 마치면 유용한 스크립트, 작은 앱, 자동화, 간단한 게임, 포트폴리오에 넣을 수 있는 프로젝트를 만들 수 있습니다. 더 고급 주제로 넘어갈 수 있는 기초도 갖추게 됩니다.