C언어

C언어 if 문

5_jinseok12 2018. 1. 8. 14:55
728x90

제어문에 대해 알아보자

제어문은 조건문과 반복문으로 나누어 진다

 

조건문 : if문 ,  switch~case문 (잘 몰라도 if문으로 대체 가능)

반복문 : for문 , while문 (둘 다 서로 대체 가능)

 

조건문(if 문)

 

if 문은 만약에~~라면 이라는 영어 단어와 같은 뜻을 가지고 있다.

조건식 자리 if() 안에 들어갈 자리의 조건은 참,거짓으로 대답할 수 있는 것만 넣어준다.

if(조건식){조건식이 참일 때 수행할 문장을 써준다.}

 

간단한 예를 들어 이해해보자

 

 

우선 int age; 를 통해 age라는 변수의 이름을 지정하고 int 를 통해 값이 정수인것을 확인할 수 있다.

printf("나이 입력:"); 이라는 문장으로 사용자가 무엇을 입력해야 할지 첫문장을 나타내준다.

scanf를 통해 사용자가 값을 입력하도록 도와주며 마지막에 printf();를 통해 입력한 값을 출력해준다.

 

관계연산자(< , > , <=, >= ,== , !=)

기본적으로 관계연산자는 6개가 있다, 변수가 크고, 작고,같거나작고, 같거나크고, 같다,다르다 를 나타낼 때 사용한다.

if 문에서 대답을 할땐 True(1), False(0)으로 나타나게 된다.

 

 

이것은 age가 19보다 같거나 작을 때의 범위를 나타낸다

 

age가 19보다 같거나 작다면 미성년자, 아니라면 성인을 출력할것이다

하나의 문장을 나타낼땐 중괄호{}가 필요없지만 여러가지 문장을 나타내고 싶다면 중괄호를 써야한다. 중괄호 안에 있는 것은 한번에 묶어서 여러가지를 출력할 수 있기 때문이다.

중괄호 쓰는것을 습관화 하도록 하자.

 

 

결과값

 

 

입력한 값이 25이므로 19보다 크기 때문에 성인입니다를 출력한 것이다.

 

 

 

 age의 값이 19이기 때문에 age<=19

즉 19보다 작거나 같다의 범위 안이라서 미성년자를 출력.

 

 

 

 

한번에 정리해보면 위에 사진처럼 나온다.

제일 먼저 변수를 정해주고 scanf를 통해 사용자가 값을 입력하도록 도와준다.

그 값을 출력해주고,

조건중에 어디에 해당하는지 값을 출력한다.

 




문제. 나이가 8살 이하라면 버스요금은 무료입니다.


 

 

결과 값. 입력한 값의 age 가 8이상이기 때문에 1500원 인 것을 알 수 있다.

 

 

 

else if 같은 경우는 다른 조건을 제시할 수 있다.

else if 는 개수제한이 없어서 여러개를 사용할 수 있다

else 은 최종적으로 위에 조건들이 다 아닐때 마지막에 실행시키는것이다

 

여기서 주의할 점은 if문은 순서대로 물어보기 때문에 순서가 중요하다

위에 나온 출력값의 범위는 사실 (20 이상 60미만) 이다.

왜냐하면 그 전에 값이 나왔다면 20보다 작다면 벌써 출력되고 프로그램이 종료되었을 텐데 밑으로 내려왔다는 점은 20보다 크다는 것을 의미한다.

 

 

 

 

else은 만나면 무조건 printf() 를 실행시키기 때문에 조건문에서 제일 마지막에 사용해야 한다. 

중간에 써놓으면 바로 실행시켜버리기 때문이다.

 

 

 

응용하기

 

응용이라고 하기에는 너무 간단하지만 홀수 짝수를 나타내는 방법을 알아보자

% 는 나누었을때 나머지를 의미한다.


number라는 변수를 2로 나누었을 때 나머지가 0이면 짝수

number라는 변수를 2로 나누었을 때 나머지가 0이 아니라면 홀수를 나타내는 코딩이다.

반응형

'C언어' 카테고리의 다른 글

C언어 while문과 for문  (0) 2018.01.10
C언어 switch문  (0) 2018.01.09
C언어 입력함수 scanf  (0) 2018.01.05
C언어 배열과 입력함수  (0) 2018.01.05
C언어 변수와 연산자  (0) 2018.01.03