if(조건식){
처리내용
}
- 조건식이 만족해야 블록 진입
- 조건식엔 논리식이 들어간다 (일반적으로 참 = 0이 아닌 숫자, 거짓 = 0)
- 논리식이란?
- true/false로 판별이 가능한 식
- 논리연산자(&&,||,== 등)를 쓴다.
- 예제1) 정수를 입력받고 숫자가 짝수인지 홀수인지 판별하는 프로그램
#include <stdio.h>
int main(void){
int num;
scanf_s("%d",&num);
if(num%2==0)
printf("짝수");
else
printf("홀수");
return 0;
}
- 다중 조건식
- 조건식을 여러개 쓸 수 있다.
- 논리연산자로 연결한다. ex) if(x==2&&y==3)
- parenthesis(괄호)를 이용하여 우선순위를 부여할 수 있다. ex) if((x==2&&y==3)||z==4)
- 예제2) 윤년 계산하기
#include <stdio.h>
int main(void){
int year;
scanf_s("%d",&year);
if((year%4==0&&year%100!=0)||year%400==0)
printf("윤년입니다");
else
printf("아닙니다");
return 0;
}
- 조건문 if 속에 또다른 if문을 넣을 수 있다. (dangling else)
if(){
처리내용
if(){
처리내용
}
}
- 반복문
- while: 조건식을 만족하는 경우 무한 반복으로 처리
- for: 조건식을 만족할때 까지만 반복 처리
- do while: 3일차에 다시 설명.
- while
- 무한반복의 성질이 있기 때문에 영원히 빠져나오지 못하는 프로그램을 만들 수 있다.
- 임의로 무한반복의 상태를 벗어나게 할 수 있다. -> break,return
- continue
- continue 아래에 있는 명령어들을 처리하지 않고 반복문의 처음으로 다시 돌아간다.(물론 조건식을 다시 확인)
- 예제3) a부터 z까지 출력하는 프로그램 만들기
#include <stdio.h>
int main(void){
char letter = 'a';
while(letter<='z'){
printf("%c",letter);
letter++;
}
return 0;
}
- 예제4) -1값을 입력할 때 까지 정수를 입력 받고 평균을 구하는 프로그램
#include <stdio.h>
int main(void){
int number;
int sum = 0;
int count = 0;
scanf_s("%d",&number);
while(number!=-1){
sum += number;
count++;
scanf_s("%d",&number);
}
if(sum==0&&count==0)
printf("0");
else
printf("%d",sum/count);
return 0;
}
- 예제5) -1값을 입력할 때 까지 정수를 입력 받고 짝수인 정수들만 평균 구하기
#include <stdio.h>
int main(void){
int number;
int sum = 0;
int count = 0;
scanf_s("%d",&number);
while(number!=-1){
if(number%2==0){
sum += number;
count++;
}
else
scanf_s("%d",&number);
}
if(sum==0&&count==0)
printf("0");
else
printf("%d",sum/count);
return 0;
}