1) 조건문

① counter 라는 변수를 생성하고 0을 저장하기 

int counter = 0;
  • C는 오래된 언어라 저장하고자 하는 변수의 종류를 꼭 알려줘야 한다
  • counter라는 변수에 숫자를 저장
  • int 는 변수가 정수(integer)라는 것을 알려주는 것이고, counter는 변수의 이름, 0은 그 값에 0을 저장(초기화)하는 것
  • 코드의 마지막은 세미콜론(;)
  • 여기서 등호(=)는 같다는 의미가 아닌, 오른쪽에 있는 값을 왼쪽에 할당한다는 의미

 

변수의 값을 1씩 증가시키기

counter = counter + 1;
counter += 1;
counter++;
  • 즉, counter에 1을 더한 값을 다시 counter에 저장(할당)한다
  • 위와 같이 3가지 방식으로 구현 가능

 

③ 조건문 만들기

if (x < y)
{
	printf("x is less than y\n");
}
else if (x > Y)
{
	printf("x is greater than y\n");
}
else (x == y)
{
	printf("x is equal to y\n");
}
  • if ( ) 의 괄호 안에는 검사하고자 하는 조건이 들어가고, { } 안에는 조건을 만족할 때 수행하고자 하는 작업이 들어간다.
  • 일치 연산자 " == " : 오래전 사람들이 합의하길 =을 2개 사용하여 같다를 표현하자라고 정한 것
  • if, else, else if 뒤에는 세미콜론(;)이 붙지 않음. 보통 조건과 같은 것들의 끝에는 세미콜론을 붙이지 않는다.

 

2) 루프

C에서도 while 이나 for 을 통해서 루프를 구현할 수 있다.

 

① while

While (true)
{
	printf("hello, world\n");
}
  • while ( )의 괄호 안에 조건을 넣고 { } 안에 수행할 작업을 포함시킨다.
  • C에서 루프를 구현하고 싶다면 성립 조건을 정해줘야 한다. (답이 네, 참, 혹은 1로 나올 수 있는 질문을 던져줘야 함)
  • 답이 참으로 나오게 하는 가장 간단한 방법은 그냥 true를 적는 것ㅇ
  • 윗 코드에서는 true라는 항상 참이 되는 조건을 통해 while 루프가 영원히 수행되도록 했다. 따라서 위의 코드는 계속해서 "hello, world"를 무한정 출력하게 될 것 !

 

만약 특정 횟수만큼 작업을 수행하고 싶다면 ?

int i = 0;
while (i < 50)
{
	printf("hello world\n");
	i = i + 1;
}
  • 변수명은 맘대로 적어도 문제 없지만, 프로그래머들은 무언가를 셀 때 간단하게 정수를 나타내는 i를 사용한다.
  • 이번에는 i<50이라는 조건을 추가
  • 처음에 i를 0이라고 정해주었고 while는 계속해서 i가 50보다 작은지를 물어볼 것
  • 이 코드가 정상적으로 작동하려면 i를 증가시켜야 한다. (i = i + 1, i += 1, i++ 모두 같은 결과를 냄.)
  • 진행 순서 : i는 0으로 설정 → i는 50보다 작은가? → 작다 → hello world를 출력한다 → i를 1증가시킨다 → i가 50보다 작은가?
    → (반복) → i가 50보다 작은가? → 작지 않다 → 종료

 

③ for

for (int i = 0; i < 50; i++)
{
	printf("hello world\n");
}
  • 따로 변수를 선언해도 되지만 위와 같이 for 를 사용하면 for ( ) 안에 각각 (변수 초기화; 변수 조건; 변수 증가) 에 해당하는 코드를 넣어서 간단하게 표현할 수 있다.
  • 즉, 가장 먼저 정수 값을 가지는 i라는 변수를 0으로 초기화하고, i가 50인지 매번 검사를 하고, 이를 만족하면 { } 안의 내용을 수행한 후에,  i를 1씩 증가시킨다는 의미
  • while문과 비교하여 코드가 엄청 간단해진 것을 확인할 수 있다.

 

 

 

 

+ Recent posts