Professional Documents
Culture Documents
구분 변환문자열 입력 형태 입력되는 변수의 자료형 10 진수 char, short, int, long 형 변수 10 진수 (양수만) 8 진수 16 진수 실수형 소수점 double 형 변수 지수형 문자형 하나의 문자 char 형 변수 문자열 하나의 문자열 char 배열
구분 변환문자열 입력 형태 입력되는 변수의 자료형 10 진수 char, short, int, long 형 변수 10 진수 (양수만) 8 진수 16 진수 실수형 소수점 double 형 변수 지수형 문자형 하나의 문자 char 형 변수 문자열 하나의 문자열 char 배열
chapter 06.
선택문
int a, b, res;
연산결과가 참인 경우 : 1
연산결과가 거짓인 경우 : 0
• 0 은 거짓 , 0 이 아닌 모든 값은 참으로 인식 .
관계연산자 연산 결과
> 왼쪽의 값이 오른쪽의 값보다 크면 참
< 왼쪽의 값이 오른쪽의 값보다 작으면 참
>= 왼쪽의 값이 오른쪽의 값보다 크거나 같으면 참
<= 왼쪽의 값이 오른쪽의 값보다 작거나 같으면 참
== 두 값이 같으면 참
!= 두 값이 같지 않으면 참
논리관계가 포함되어 있다 .
• 논리연산자의 종류
논리연산자 의미 연산 결과
&& 논리곱 (and) 왼쪽과 오른쪽의 값이 모두 참일 때만 참
|| 논리합 (or) 왼쪽과 오른쪽의 값 중에서 하나라도 참이면 참
#include <stdio.h>
int main()
{
int a=10;
논리곱 연산 : 1
논리합 연산 : 0
논리부정 연산 : 0
피연산자가 상수인 경우 : 1
• if 문의 가장 기본이 되는 형태
int a, b, res;
한빛미디어㈜ - 10 - ehanbit.net
▶ if~else 구문을 사용한 비만도 검사 프로그램 IT COOKBOOK
#include <stdio.h>
int main()
{
double weight, height; // 몸무게와 키를 입력할 변
double bmi; 수
// bmi 의 결과를 저장할 변
printf(" 몸무게를 입력하세요 (kg) : ");
수
scanf("%lf", &weight);
printf(" 키를 입력하세요 (cm) : ");
scanf("%lf", &height);
height = height / 100; // 키를 m 단위로 환산
bmi = weight / (height * height);
printf(" 당신의 BMI 는 : %.1lf 입니다 .\n", bmi);
if(bmi>=20.0 && bmi<25.0)
printf(" 표준체중 입니다 .\n");
else
printf(" 체중관리가 필요합니다 .\n");
return 0;
}
한빛미디어㈜ - 11 - ehanbit.net
▶ if~else if~else 구문을 사용한 선택문 IT COOKBOOK
한빛미디어㈜ - 12 - ehanbit.net
▶ if~else if~else 구문을 사용한 학점계산 프로그램
예 IT COOKBOOK
int main()
{
double avg;
char grade;
if(avg>=90.0) grade='A';
else if(avg>=80.0) grade='B';
else if(avg>=70.0) grade='C';
else grade='F';
return 0;
}
한빛미디어㈜ - 13 - ehanbit.net
▶ else 의 결합 문제 (dangling else 문제 ) IT COOKBOOK
한빛미디어㈜ - 14 - ehanbit.net
switch~case 문을 사용한 선택문 IT COOKBOOK
• 조건에 따라 선택할 문장이 많은 경우에 사용한다 .
• 조건식은 정수식을 사용하며 case 의 일치하는 문장을 실행한다 .
실행할 문장 1-1
반드시 있어야 하는 것 아님 .
#include <stdio.h>
int main()
{
int lot;
switch(lot){
case 1: // 당첨번호가 1 이면
printf(" 김서방 "); // 김서방을 출력하고
break; // switch~case 의 블록을 빠져나간다 .
case 2:
printf(" 홍가네 ");
break;
case 3:
printf(" 안산댁 ");
break;
default: // 일치하는 당첨번호가 없으면 실행한다
printf(" 당첨자가 없습니다 . !");
break;
}
return 0;
}
한빛미디어㈜ - 16 - ehanbit.net
▶ break 가 없으면 switch~case 문은 분기문이다 . IT COOKBOOK
한빛미디어㈜ - 17 - ehanbit.net