섹션
모두 펼치기모두 접기
Unit 1. 소프트웨어 교육과 C 언어
소프트웨어 교육과 C 언어에 대해 설명합니다.
Unit 2. Visual Studio 설치하기
Visual Studio Community 설치 방법을 설명합니다.
Unit 3. Hello, world!로 시작하기
프로그래밍 언어의 첫 관문인 Hello, world! 출력을 설명합니다.
Unit 4. 기본 문법 알아보기
C 언어의 전체적인 문법에 대해 설명합니다.
핵심 정리
Unit 5. 변수 만들기
변수를 만들고 변수에 값을 저장하는 방법을 설명합니다.
Unit 6. 디버거 사용하기
Visual Studio 디버거의 중단점을 사용하는 방법, 코드를 한 줄씩 실행하는 방법, 변수의 값을 확인하는 방법을 설명합니다.
Unit 7. 정수 자료형 사용하기
정수형 변수를 선언하는 방법과 정수 자료형의 오버플로우, 언더플로우, 자료형 크기 구하기, 최솟값과 최댓값에 대해 설명합니다.
Unit 8. 실수 자료형 사용하기
실수형 변수를 선언하는 방법과 자료형 크기 구하기, 최솟값과 최댓값, 오버플로우, 언더플로우에 대해 설명합니다.
핵심 정리
Unit 9. 문자 자료형 사용하기
문자 한 개를 저장할 수 있는 char 자료형에 대해 설명합니다.
Unit 10. 상수 사용하기
다양한 값을 표현하는 리터럴과 변하지 않는 값을 위한 상수에 대해 설명합니다.
Unit 11. 입력 값을 변수에 저장하기
입력값을 변수에 저장하는 방법을 설명합니다.
핵심 정리
Unit 12. 덧셈, 뺄셈하기
덧셈과 뺄셈에 대해 설명합니다.
Unit 13. 증가, 감소 연산자 사용하기
증가, 감소 연산자에 설명하고, 연산자의 위치에 따른 차이점을 알아봅니다.
Unit 14. 곱셈, 나눗셈하기
곱셈과 나눗셈에 대해 설명합니다.
Unit 15. 나머지 연산하기
나머지 연산에 대해 설명합니다.
Unit 16. 자료형의 확장과 축소 알아보기
서로 다른 자료형끼리 연산을 했을 때 발생하는 자료형의 확장과 축소에 대해 설명합니다.
핵심 정리
Unit 17. if 조건문으로 특정 조건일 때 코드 실행하기
특정 조건일 때 코드를 실행하는 if 조건문에 대해 설명합니다.
Unit 18. else를 사용하여 두 방향으로 분기하기
두 방향으로 분기하는 else에 대해 설명합니다.
Unit 19. else if를 사용하여 여러 방향으로 분기하기
여러 가지 상황을 처리하는 else if에 대해 설명합니다.
핵심 정리
Unit 20. 비교 연산자와 삼항 연산자 사용하기
if 조건문에서 사용할 수 있는 비교 연산자와 삼항 연산자를 설명합니다.
Unit 21. 논리 연산자 사용하기
조건식이나 값을 논리적으로 판단하는 논리 연산자에 대해 설명합니다.
Unit 22. 불 자료형 사용하기
참과 거짓을 나타내는 논리 자료형에 대해 설명합니다.
핵심 정리
Unit 23. 비트 연산자 사용하기
값을 비트 단위로 연산하는 비트 연산자에 대해 설명합니다.
Unit 24. 비트 연산자 응용하기
부호 있는 정수와 부호 없는 정수에 비트 연산을 했을 때의 차이점과 비트 연산자를 응용한 플래그 처리 방법을 설명합니다.
Unit 25. 연산자 우선순위 알아보기
연산자의 우선순위에 대해 설명합니다.
핵심 정리
Unit 26. switch 분기문으로 다양한 조건 처리하기
다양한 조건을 처리할 수 있는 switch 분기문에 대해 설명합니다.
Unit 27. for 반복문으로 Hello, world! 100번 출력하기
Hello, world!를 100번 출력해보면서 for 반복문을 학습합니다.
Unit 28. while 반복문으로 Hello, world! 100번 출력하기
Hello, world!를 100번 출력해보면서 while 반복문을 학습합니다.
Unit 29. do while 반복문으로 최소 한 번은 실행하기
do while 반복문을 사용하여 코드를 최소 한번은 실행하는 방법을 설명합니다.
Unit 30. break, continue로 반복문 제어하기
break와 continue를 사용하여 반복문을 제어하는 방법을 설명합니다.
Unit 31. 계단식으로 별 출력하기
지금까지 배운 for, while 반복문과 if 조건문을 사용하여 계단식으로 별을 출력하는 방법을 설명합니다.
핵심 정리
Unit 32. goto로 프로그램의 흐름을 원하는 대로 바꾸기
코드의 원하는 부분으로 건너뛰는 goto 제어문에 대해 설명합니다.
Unit 33. FizzBuzz
지금까지 배운 내용을 활용하여 FizzBuzz 문제를 풀어봅니다.
핵심 정리
Unit 34. 포인터 사용하기
메모리의 특정 위치를 가리키는 포인터에 대해 설명합니다.
Unit 35. 메모리 사용하기
메모리 공간을 할당받아 사용하는 방법에 대해 설명합니다.
핵심 정리
Unit 36. 배열 사용하기
값을 여러 개 저장할 수 있는 배열에 대해 알아보고, 반복문으로 값을 출력하는 방법을 설명합니다.
Unit 37. 2차원 배열 사용하기
평면 구조의 2차원 배열에 대해 알아보고, 반복문으로 값을 출력하는 방법을 설명합니다.
Unit 38. 포인터와 배열 응용하기
지금까지 크기가 고정된 배열을 사용했습니다. 이번에는 포인터에 메모리를 할당하여 배열처럼 사용해보겠습니다.
핵심 정리
Unit 39. 문자열 사용하기
C 언어에서 문자열을 다루는 방법을 설명합니다.
Unit 40. 입력 값을 문자열에 저장하기
입력값을 문자열에 저장하는 방법을 설명합니다.
핵심 정리
Unit 41. 문자열의 길이를 구하고 비교하기
문자열의 길이를 구하는 방법과 두 문자열이 같은지 비교하는 방법을 설명합니다.
Unit 42. 문자열을 복사하고 붙이기
문자열을 다른 곳으로 복사하는 방법과 두 문자열을 붙이는 방법을 설명합니다.
Unit 43. 문자열 만들기
서식을 지정하여 문자열을 만드는 방법을 설명합니다.
Unit 44. 문자열 검색하기
문자열에서 문자와 문자열로 검색하는 방법을 설명합니다.
Unit 45. 문자열 자르기
특정 문자를 기준으로 문자열을 자르는 방법을 설명합니다.
Unit 46. 문자열과 숫자를 서로 변환하기
문자열을 숫자로, 숫자를 문자열로 변환하는 방법을 설명합니다.
Unit 47. 회문 판별과 N-gram 만들기
문자열을 이용하여 회문을 판별하는 방법과 N-gram을 만드는 방법을 설명합니다.
핵심 정리
Unit 48. 구조체 사용하기
관련 정보를 하나의 의미로 묶는 구조체에 대해 설명합니다.
Unit 49. 구조체 포인터 사용하기
구조체 포인터의 사용 방법과 구조체 포인터에 메모리를 할당하는 방법을 설명합니다.
Unit 50. 두 점 사이의 거리 구하기
구조체를 활용하여 2차원 평면에서 위치를 표현하고 두 점 사이의 거리를 구하는 방법을 설명합니다.
핵심 정리
Unit 51. 구조체 멤버 정렬 사용하기
구조체가 메모리에 올라갔을 때 멤버를 정렬(alignment)하는 기능에 대해 설명합니다.
Unit 52. 구조체와 메모리 활용하기
메모리 함수를 사용하여 구조체와 메모리에 값을 설정하는 방법, 구조체와 메모리의 내용을 복사하는 방법을 설명합니다.
Unit 53. 구조체 배열 사용하기
구조체를 배열로 선언하는 방법과 구초체 포인터 배열을 선언하고 메모리를 할당하는 방법을 설명합니다.
핵심 정리
Unit 54. 공용체 사용하기
모든 멤버가 공간을 공유하는 공용체를 설명합니다.
Unit 55. 구조체와 공용체 활용하기
구조체와 공용체를 조합하는 방법을 설명합니다.
핵심 정리
Unit 56. 구조체 비트 필드 사용하기
구조체의 멤버를 비트 단위로 저장하는 비트 필드에 대해 설명합니다.
Unit 57. 열거형 사용하기
정수형 상수에 이름을 붙여서 표현하는 열거형에 대해 알아보고, switch 분기문이나 for 반복문에서 활용하는 방법을 설명합니다.
핵심 정리
Unit 58. 자료형 변환하기
변수를 다른 자료형을 변환하는 방법과 포인터, void 포인터, 구조체 포인터를 다른 자료형으로 변환하는 방법을 설명합니다.
Unit 59. 포인터 연산 사용하기
메모리 주소를 옮겨다닐 수 있는 포인터 연산에 대해 설명합니다.
핵심 정리
Unit 60. 함수 사용하기
특정 용도의 코드를 한 곳에 모아놓은 함수에 대해 설명합니다.
Unit 61. 함수에서 반환값 사용하기
함수 바깥에 결괏값을 알려주는 반환값에 대해 설명합니다.
Unit 62. 함수에서 매개변수 사용하기
함수 안에 값을 넘겨주는 매개변수에 대해 설명합니다.
핵심 정리
Unit 63. 함수에서 포인터 매개변수 사용하기
함수에서 포인터를 매개변수로 활용하는 방법을 설명합니다.
Unit 64. 함수에서 배열 매개변수 사용하기
함수에서 1차원 배열과 2차원 배열을 매개변수로 사용하는 방법을 설명합니다.
Unit 65. 함수에서 구조체 매개변수 사용하기
함수에서 구조체를 매개변수로 사용하는 방법을 설명합니다.
핵심 정리
Unit 66. 함수에서 가변 인자 사용하기
매개변수의 개수가 정해지지 않은 가변 인자 함수에 대해 설명합니다.
Unit 67. 함수에서 재귀호출 사용하기
함수 안에서 자기자신을 호출하는 재귀호출에 대해 설명합니다.
Unit 68. 함수 포인터 사용하기
함수를 저장하는 포인터인 함수 포인터에 대해 설명합니다.
Unit 69. 함수 포인터 활용하기
함수 포인터 배열을 선언하는 방법, 함수 포인터를 구조체 멤버로 사용하는 방법, 함수 포인터를 함수의 매개변수와 반환값으로 사용하는 방법을 설명합니다.
핵심 정리
Unit 70. 파일에서 문자열을 읽고 쓰기
파일에 값을 쓰는 방법과 읽는 방법을 설명합니다.
Unit 71. 파일 포인터 활용하기
파일의 읽기/쓰기 위치를 활용하여 파일의 크기를 구하는 방법, 파일을 부분적으로 읽고 쓰는 방법을 설명합니다.
Unit 72. 파일에서 구조체를 읽고 쓰기
구조체를 활용하여 바이너리 파일을 처리하는 방법을 설명합니다.
핵심 정리
Unit 73. 배열 정렬하기
거품 정렬(bubble sort)을 구현하는 방법과 퀵 정렬(quick sort) 함수 사용 방법을 설명합니다.
Unit 74. 연결 리스트 구현하기
C 언어로 연결 리스트(linked list)를 구현하는 방법을 설명합니다.
핵심 정리
Unit 75. 매크로 사용하기
C 언어에서 매크로를 정의하는 방법과 주의점에 대해 설명합니다.
Unit 76. 조건부 컴파일과 파일 포함 사용하기
매크로를 이용하여 조건부 컴파일을 하는 방법과 파일 포함 방법을 설명합니다.
Unit 77. 여러 소스 파일 사용하기
함수의 기능별로 파일을 분리하고, 함수 선언과 구조체를 헤더 파일에 넣는 방법을 설명합니다.
핵심 정리
Unit 78. 전역 변수 사용하기
모든 함수에서 접근할 수 있는 전역 변수에 대해 설명합니다.
Unit 79. 기억 부류 지정자 사용하기
함수를 벗어났을 때 값이 계속 유지되는 정적 변수와 현재 파일안에서만 사용할 수 있는 정적 함수에 대해 설명합니다.
Unit 80. 실행 파일 옵션 사용하기
실행 파일에 지정한 옵션을 어떻게 사용하는지 설명합니다.
핵심 정리
Unit 81. 실전 예제: 비트맵 파일을 아스키 아트로 변환하기
비트맵 그림 파일의 픽셀 정보를 읽어서 아스키 아트로 출력하는 프로그램을 만들어봅니다.
Unit 82. 실전 예제: 파일 아카이브 구현하기
파일 안에 파일을 보관하는 파일 아카이브를 만들어봅니다.
핵심정리
Unit 83. 실전 예제: JSON 파일 읽고 쓰기
C 언어에서 JSON 형식을 읽고 쓰는 방법을 설명합니다.
Unit 84. 실전 예제: GitHub의 소스 코드 사용하기
GitHub의 소스 코드를 사용하여 JSON 형식을 읽고 쓰는 방법을 설명합니다.
핵심 정리
Unit 85. 부록