조건문
조건문 : 조건이 '참'이면 실행, '거짓'이면 실행하지 않음
if 문, else 문
코드
if (조건){
//조건이 '참'일 때 실행할 코드
}
else {
//위의 if 문의 조건이 '거짓'일 때 실행할 코드
}
두 정수를 받아 나눗셈을 하는 코드, 0으로 나누면 오류를 출력
void main() {
int num1, num2;
printf("Input two number : ");
scanf("%d %d", &num1, &num2);
if (num2 == 0) {
printf("Division by Zero!!\n");
}
else {
printf("%d / %d = %d\n", num1, num2, num1 / num2);
}
}
결과 1
Input two number : 10 2
10 / 2 = 5
결과 2
Input two number : 10 0
Division by Zero!!
if ~ else 문
코드
if (조건){
//조건이 '참'일 때 실행할 코드
}
else if (조건) {
//위의 if 문의 조건이 '거짓'이고, 현재의 if 문의 조건이 '참'일 때 실행할 코드
}
입력받은 수가 양수, 0, 음수중에 어디에 해당하는지 출력하는 코드
void main() {
int number;
printf("Input number : ");
scanf("%d", &number);
if (number > 0) {
printf("Positive number!\n");
}
else if (number == 0) {
printf("Zero!\n");
}
else {
printf("Negative number!\n");
}
}
결과
Input number : 135
Positive number!
switch 문
코드
switch (인자) {
case (값1):
//'인자'가 '값1'과 같을 때 실행할 코드
break;
case (값2):
//'인자'가 '값2'과 같을 때 실행할 코드
break;
case (값3):
//'인자'가 '값3'과 같을 때 실행할 코드
break;
default:
//'인자'와 만족하는 case 레이블이 없을 경우 실행할 코드
}
두 정수와, 실행할 사칙연산을 입력받아 계산하여 출력하는 코드
void main() {
int num1, num2;
char operator;
printf("Input formula : ");
scanf("%d %c %d", &num1, &operator, &num2);
switch (operator){
case '+':
printf("%d + %d = %d\n", num1, num2, num1 + num2);
break;
case '-':
printf("%d - %d = %d\n", num1, num2, num1 - num2);
break;
case '*':
printf("%d * %d = %d\n", num1, num2, num1 * num2);
break;
case '/':
printf("%d / %d = %d\n", num1, num2, num1 / num2);
break;
}
}
결과
Input formula : 12 * 15
12 * 15 = 180
삼항 연산자
코드
(조건) ? (조건이 '참'일 때 반환할 값) : (조건이 '거짓'일 때 반환할 값);
입력한 두 수중 큰 수를 출력하는 코드
void main() {
int num1, num2;
printf("Input two number : ");
scanf("%d %d", &num1, &num2);
printf("Bigger number : %d\n", (num1 > num2) ? num1 : num2);
}
결과
Input two number : 100 105
Bigger number : 105