변수
Scratch에서 블록으로 표현했던 조건문과 루프를 C로 구현해보자.
Scratch에서 counter 변수를 생성하고 0을 저장하는 블록은 다음과 같다.

int counter = 0;
int는 변수가 정수(integer)라는 것을 알려주고, counter는 변수 이름, 0은 초기값이다.
변수를 1씩 증가시키는 방법은 여러 가지다.

counter = counter + 1;
counter += 1;
counter++;
세 가지 모두 같은 기능을 수행한다.
조건문

if (x < y)
{
printf("x is less than y\n");
}
if (조건) 괄호 안에 검사할 조건을 넣고, { } 안에 조건이 참일 때 수행할 작업을 넣는다.else를 사용하면 조건이 거짓일 때의 동작을 정의할 수 있다.

if (x < y)
{
printf("x is less than y\n");
}
else
{
printf("x is not less than y\n");
}
else if로 조건을 추가할 수 있다.

if (x < y)
{
printf("x is less than y\n");
}
else if (x > y)
{
printf("x is greater than y\n");
}
else if (x == y)
{
printf("x is equal to y\n");
}
==는 일치 연산자로 같다는 의미다.
x가 y보다 작지도 크지도 않다면 남은 유일한 가능성은 "같다"이므로 마지막 조건을 제거할 수 있다.
if (x < y)
{
printf("x is less than y\n");
}
else if (x > y)
{
printf("x is greater than y\n");
}
else
{
printf("x is equal to y\n");
}
이렇게 효율적으로 코딩하고 적은 메모리와 CPU를 사용하는 것이 중요하다.
루프 (Loop)
while 문
while (조건) 괄호 안의 조건이 참인 동안 { } 안의 작업을 반복한다. true는 항상 참이므로 무한히 반복된다.

while (true)
{
printf("hello, world\n");
}
특정 횟수만큼 반복하려면 다음과 같이 한다.

int i = 0;
while (i < 50)
{
printf("hello, world\n");
i++;
}
변수 i를 0으로 초기화하고, i < 50 조건이 참인 동안 반복한다. 매번 i를 1씩 증가시켜 총 50번 실행된다.
진행 순서:
i를 0으로 설정i가 50보다 작은가? → 참"hello, world"출력i를 1 증가i가 50보다 작은가? → 참 (반복)i가 50보다 작은가? → 거짓 → 종료
for 문
for 문을 사용하면 더 간결하게 표현할 수 있다.
for (초기화; 조건; 증가) 형태로 세 가지를 한 줄에 작성한다. while 문보다 훨씬 간결하다.

for (int i = 0; i < 50; i++)
{
printf("hello, world\n");
}
연습 문제
Q. "개발공부는 재미있다!"를 10번 출력하는 코드를 작성해보자
#include <stdio.h>
int main(void)
{
for (int i = 0; i < 10; i++)
{
printf("개발공부는 재미있다!\n");
}
}'TIL' 카테고리의 다른 글
| [CS50] C 언어 - 사용자 정의 함수와 중첩루프 (0) | 2025.11.05 |
|---|---|
| [CS50] C 언어 - 자료형과 연산자 (0) | 2025.11.05 |
| [CS50] C 언어 - 문자열 (0) | 2025.11.05 |
| [CS50] C 기초 (0) | 2025.11.05 |
| [TS] 조건부 타입과 infer를 활용한 타입 추론 연습 (0) | 2025.11.05 |
