티스토리 뷰

반응형

 

 

주어진 학습목표를 이루기 위해서 이해를 우선으로 두고 공부할 것이다.

들어가기 전에 학습목표, 핵심 단어는 강의 자료를 가져올 것이고 그 이후로는 내가 이해하고 공부한 부분을 직접 적고, 마지막에는 배운 점이나 느낀 점을 적도록 하겠다. 

 

 


 

 

들어가기 전에

스크래치에서 블록으로 표현했던 조건문과 루프 또한 C로 동일하게 구현할 수 있습니다. 스크래치에서 여러 기능을 가진 블록들을 이어 붙였던 것처럼 C의 다양한 문법을 이용하면 조건문과 루프를 더 간단한 텍스트 형식으로 표현할 수 있습니다.

 

학습 목표

조건문과 루프를 c로 작성할 수 있습니다.

 

핵심 단어

  • int
  • if
  • while
  • for

 

 


 

int

 

int는 정수(integer)의 줄임 표현이다. 물론 변수 선언전에 타입 선언을 해줘야 하기 때문에 아래와 같이 작성할 수 있다. 

 

int counter = 0;

 

 

counter 값을 1씩 증가시키고 싶을 때는 아래 세 가지 방법을 모두 쓸 수 있다. 밑으로 갈수록 점점 더 간결해진다. 이렇게 같은 기능을 하지만 기존 기능을 더욱 보기 좋고 간결하게 활용할 수 있도록 해주는 것을 Syntactic sugar(문법 설탕) 이라고 한다. 

counter = counter + 1;
counter += 1;
counter++;

 

 

 

if

스크래치의 조건문 블록을 C 코드로 나타낸 모습이다. x <y 이거나 x> y이인 경우가 아니면 x==y인 경우만 남기 때문에 굳이 마지막에 else if (x == y )와 같은 조건을 한 번 더 쓸 필요가 없다. 이렇듯 좀 더 간결하고, 불필요한 조건문을 뺌으로써 더 효율적인 코딩이 된다. 이는 더 적은 메모리, CPU를 사용하게 되므로 조건문을 쓸 때 주의해서 써야 한다. 

 

 

 

 

while

 

반복문은 while이나 for을 통해서 구현할 수 있다. 먼저 반복문의 경우에는 성립 조건을 정해줘야한다. 답이 yes or no, 혹은 1로 나올 수 있는 질문을 던져줘야 한다. 답이 참으로 나오게 하는 방법은 5-5, 1 <2 등 여러 방법이 있지만 가장 간단한 방법은 true를 적는 것이다. 아래 코드에서는 항상 참이 되는 조건을 통해 while문이 영원히 수행되도록한다. (무한루프) 

 

 

 

만약 특정 횟수만큼 작업을 수행하고 싶다면 아래처럼 한계가 되는 조건을 넣어주면 된다. 

 

 

 

for

 

위의 while문을 쓴 코드와 같은 결과가 출력되는 for문의 형태이다. for () 안에서 각각(변수 초기화; 변수 조건; 변수 증가; )를 수행할 수 있어 더 간단하게 표현할 수 있다. 

 

 

 

 


 

생각해보기

 
학습한 다양한 방법을 이용하여 "개발공부는 재미있다!"를 10번 출력하는 코드를 작성해보세요.

#include <stdio.h>
int main(void)

for (int i=0; i<10; i++) {
	printf("개발공부는 재미있다!\n")
}

 

오늘은 변수 선언시 타입 선언을 미리 해주는 것 빼고는 자바스크립트와 거의 같아서 더 수월했다. 이번 강의를 통해  Syntactic sugar(문법 설탕)이라는 용어를 알게 되었다. 

 



 


Reference : CS50

반응형