-
조건문
[학습내용] [학습목표] ▪ if문
▪ switch case문▪ if 구문의 기본 문법을 알고 조건식을 구현할 수 있다.
▪ switch case 구문의 기본 문법을 알고 조건식을 구현할 수 있다.
▪ 표준 입력함수를 알고 사용할 수 있다.if문
1. if
기본 문법
▪ 조건을 판단하여 참인 경우 문장 수행
형식 if(조건식)
문장 ;예제 if( score < 60 )
printf(“불합격입니다.\n”);예제
▪ 변수 a가 양수이면 “Positive”를 출력하시오.
int a=5; if (a>0) printf(“Positive”);
▪ 변수 a가 양수이면 a에 1을 할당하고 “Positive”를 출력하시오.
int a=5; if (a>0) { a=1; printf(“Positive”); } // 조건에 따른 수행 문장이 두 문장 이상인 경우는 { }로 시작과 끝을 알림
2. if ~ else
기본 문법
형식 if (조건식)
문장1 ;
else
문장2 ;예제 if ( score < 60 )
printf(“불합격입니다.\n”);
else
printf(“합격입니다.\n”);예제
▪ 변수 a가 양수이면 “Positive”를 출력하고 음수이면 “Negative”를 출력하시오.
int a=5; if (a>0) printf(“Positive”); else printf(“Negative”);
▪ 변수 a가 홀수이면 “Odd”를 출력하고 짝수이면 “Even”를 출력하시오.
int a=5; if (a%2) printf(“Odd”); else printf(“Even”);
3. if ~ else if ~ else
기본 문법
형식 if (조건식 1)
문장1 ;
else if (조건식 2)
문장2 ;
else if (조건식 3)
문장3 ;
∙∙∙∙∙∙∙
else
문장n ;예제 if ( age < 19 )
printf(“청소년 요금입니다.\n”);
else if ( age >=65 )
printf(“경로 우대 요금입니다.\n”);
else
printf(“성인 요금입니다.\n”);예제
▪ 변수 a가 양수이면 “Positive”를 출력하고 음수이면 “Negative”를, 0이면 “Zero”를 출력하시오.
int a=5; if (a>0) printf(“Positive”); else if (a<0) printf(“Negative”); else printf(“Zero”);
4. 중첩 if문
▪ 변수 a가 양수인 경우 100 이상이면 “Great”, 100 미만이면 “Good”, 음수이면 “Negative”, 0이면 “Zero”를 출력하시오.
int a=5; if (a>0) { if(a>=100) printf(“Great”); else printf(“Good”); } else if (a<0) printf(“Negative”); else printf(“Zero”);
switch case문
1. switch문
기본 문법
switch( 값 ) { case 값1 : 문장1-1; 문장1-2; break; case 값2 : 문장2-1; 문장2-2; break; case 값3 : 문장3-1; 문장3-2; break; . . . default : 문장d1; 문장d2; }
예제 1
int a=2; switch( a ) { case 1 : printf(“one”); break; case 2 : printf(“two”); break; case 3 : printf(“three”); break; default : printf(“other”); } char a=‘K’; switch( a ) { case ‘A’ : printf(“Ahn”); break; case ‘L’ : printf(“Lee”); break; case ‘K’ : printf(“Kim”); break; default : printf(“other”); }
예제 2
int a=2; switch( a ) { case 1 : printf(“one”); case 2 : printf(“two”); case 3 : printf(“three”); default : printf(“other”); }
예제 3
int a=2; switch( a%3 ) { case 0 : printf(“zero”); break; case 1 : printf(“one”); break; case 2 : printf(“two”); break; } char a=85; switch( a ) { case a>80 : printf(“one”); break; case a<30 : printf(“two”); break; default : printf(“other”); }
if와 switch 비교
char grade;
scanf(“%c”, &grade);
if ( grade == ‘A’)
printf(“Excellent”);
else if ( grade == ‘B’)
printf(“Good”);
else if ( grade == ‘C’)
printf(“Normal”);
else if ( grade == ‘D’)
printf(“Bad”);
else
printf(“Fail”);char grade;
scanf(“%c”, &grade);
switch(grade)
{
case ‘A’ : printf(“Excellent”); break;
case ‘B’ : printf(“Good”); break;
case ‘C’ : printf(“Normal”); break;
case ‘D’ : printf(“Bad”); break;
default : printf(“Fail”); break;
}
2. 입력문
scanf() 소개
▪ scanf()를 이용한 입력
▪ 표준입력으로부터 다양한 자료를 지정한 변수에 저장
▪ 형식지정자(%d %c %f %lf) 사용
▪ 공백, enter 전 까지를입력
▪ 형식 : scanf(“형식지정자”, &변수명)
정수 입력
▪ 형식지정자 : %d
int a, b; scanf(“%d”, &a); printf(“%d”, a); scanf(“%d”, &b); printf(“%d” ,b); scanf(“%d %d”,&a, &b); printf(“%d %d”, a, b);
실수 입력
▪ 형식지정자 : %f(float) %lf(double)
float a; double b; scanf(“%f”, &a); printf(“%f”, a); scanf(“%lf”, &b); printf(“%f” ,b); scanf(“%f %lf”,&a, &b); printf(“%f %f”, a, b);
문자 입력
• 형식지정자 : %c
• 단일문자
char a,vb; scanf(“%c %c”, &a, &b); printf(“%c %c”, a, b); scanf(“%c”, &a); printf(“%c”, a); scanf(“%c”, &b); printf(“%c” ,b);
평가하기
Q1. if 구문과 관련하여 옳지 않은 설명은 무엇인가?
① if문 내에 if문을 포함시킬 수 있다.
② 조건에 따라 수행할 문장이 2문장 이하이면 { }는 생략 가능하다.
③ if ~ else if를 사용할 때 반드시 else문을 사용하지 않아도 된다.
④ if문에서 조건에 따라 수행할 문장은 여러 문장을 기술할 수 있다.한 문장인 경우만 { }가 생략 가능합니다.
Q2. switch ~ case 구문에서 분기 값이 해당하는 case가 없을 경우, 수행할 문장을 기술할 때 사용할 문장은 무엇인가?
① break
② default
③ true
④ all해당하는 case가 없는 경우에는 default에 기술한 문장을 수행합니다.
Q3. scanf()를 이용하여 표준 입력에서 double형 데이터를 입력하고자 할 때 형식문자로 옳은 것은 무엇인가?
① %c
② %d
③ %f
④ %lf
연산 결과 정수로 몫과 나머지가 출력됩니다.
학습정리
1. if문
• 조건에 따라 분기되는 if문은 크게 3가지 형태로 구분됨
• if문 내에 중첩해서 if문을 기술하는 것이 가능함
• 조건에 따라 수행하는 문장이 한 문장이면 { }는 생략 가능함
2. switch case문
• switch문에서 분기 조건으로 상수, 정수, 수식이 사용될 수 있음
• 조건에 일치하는 case가 없는 경우 수행할 문장은 default에 기술함
• 표준입력 함수로 scanf()를 사용하고 입력을 위해 형식지정자를 사용함
• 입력 버퍼를 비우는 함수로 fflush(stdin);함수가 있음
'Blog > JAVA기반 스마트웹 개발2021' 카테고리의 다른 글
프로그래밍 언어 활용 part 1 - 함수 (0) 2021.07.26 프로그래밍 언어 활용 part 1 - 반복문 (0) 2021.07.26 프로그래밍 언어 활용 part 1 - 연산자 (0) 2021.07.25 프로그래밍 언어 활용 part 1 - 변수와 데이터형 (0) 2021.07.25 프로그래밍 언어 활용 part 1 - 프로그램 기본 구조 (0) 2021.07.25 댓글