language/c 5

[C언어] 05. 반복문

같은 작업을 여러 번 해야 할 때, 코드를 여러 번 복사하는 대신 반복문을 쓴다. "1부터 100까지 더하기"를 덧셈 100줄로 쓰지 않고 몇 줄로 끝내는 것이다. C의 반복문에는 while, do~while, for 세 가지가 있다. 종류특징while조건이 참인 동안 반복 (반복 횟수를 모를 때)do ~ while일단 한 번 실행한 뒤 조건 검사 (최소 1회 보장)for정해진 횟수만큼 반복1. while 문조건이 참인 동안 중괄호 안을 반복한다. 조건을 먼저 검사하므로, 처음부터 거짓이면 한 번도 실행되지 않는다(0번 이상).while (조건) { 수행 문장;} 반복 횟수를 미리 알 수 없을 때(예: "0이 입력될 때까지") 적합하다.int n;while (1) { /..

language/c 2026.08.03

[C언어] 04. 조건문

지금까지의 프로그램은 위에서 아래로 한 줄씩 차례대로 실행됐다. 하지만 실제 프로그램은 "조건에 따라 다르게" 동작해야 한다. 이렇게 실행 흐름을 바꾸는 문장을 제어문이라 하고, 그중 조건에 따라 갈래를 나누는 것이 조건문이다.0. 제어 구조의 세 가지 형태 구조설명순차 구조위에서 아래로 차례대로 실행선택 구조조건에 따라 실행할 문장을 선택 (조건문)반복 구조조건이 참인 동안 문장을 반복 (반복문) 모든 프로그램은 이 세 구조의 조합으로 만들어진다. 이 글에서 다루는 건 가운데의 선택 구조다.1. if 문if는 조건식이 참일 때만 중괄호 안의 문장을 실행한다.if (조건식) { 조건이 참일 때 수행할 문장;} int iNo = 10;if (iNo > 0) { printf("양수입니다.\n");..

language/c 2026.07.27

[C언어] 03. 수식과 연산자

프로그램이 하는 일의 대부분은 값을 계산하고 비교하고 조합하는 것이다. 이 모든 연산을 담당하는 것이 연산자다. 오늘은 산술·증감·관계·논리 연산자부터, 내가 자주 헷갈린 형변환과 연산 우선순위까지 정리했다.1. 산술 연산자기본 사칙연산과 나머지 연산이 있다.연산자의미예 (a=7, b=2)+덧셈a + b → 9-뺄셈a - b → 5*곱셈a * b → 14/나눗셈a / b → 3 (정수 나눗셈)%나머지a % b → 1 정수끼리의 나눗셈은 소수점이 버려진다7 / 2 는 3.5가 아니라 3이다. 정수끼리 계산하면 결과도 정수가 되어 소수 이하가 잘리기 때문이다. 실수 결과가 필요하면 한쪽을 실수로 만들어야 한다(7.0 / 2 → 3.5). 이 함정은 뒤의 형변환에서 다시 다룬다.2. 증감 연산자++, --는 ..

language/c 2026.07.20

[C언어] 02. 기본 변수와 입력

프로그램은 결국 데이터를 다루는 일이고, 그 데이터를 담는 그릇이 변수다. 오늘은 변수가 무엇이고 어떻게 선언·저장·출력하는지, 그리고 사용자에게서 값을 입력받는 scanf까지 정리했다.1. 변수와 자료형변수란?프로그램이 사용하는 데이터를 일시적으로 저장하기 위한 메모리 공간이다. 변수에는 값, 이름, 자료형(크기), 주소가 따라붙는다.C에서 변수는 쓰기 전에 반드시 자료형과 함께 선언해야 한다. 선언은 "이런 타입의 변수를 쓰겠다"고 컴파일러에 미리 알리는 일이고, 컴파일러는 이를 보고 알맞은 크기의 메모리를 확보한다.대표적인 자료형은 정수형 int, 실수형 double, 문자형 char 등이다. (참고로 C에는 원래 논리형 bool이 따로 없어, 정수 0/1로 참거짓을 표현했다.) 변수 이름(식별자)..

language/c 2026.07.10

[C언어] 01. 첫 프로젝트

모든 프로그래밍 언어 학습은 화면에 "Hello World"를 띄우는 것에서 시작한다. 단순해 보이는 이 한 줄짜리 프로그램에도 사실 C언어의 기본 골격이 모두 담겨 있다.이 글에서는 첫 프로그램을 작성해보고, 그 안에 들어 있는 구성요소(헤더, main 함수, 전처리기, 주석)가 각각 무슨 역할을 하는지 하나씩 짚어본다.1. 첫 프로그램: Hello World#include int main(void){ printf("Hello World! \n"); printf("Kim ChulSoo \n"); return 0;}실행하면 다음과 같이 출력된다.Hello World!Kim ChulSooprintf 끝의 \n은 줄바꿈 문자다. 화면에서 커서를 다음 줄로 옮겨, 두 문장이 각각 다른 줄에 출..

language/c 2026.06.28