// 중첩 if문
// 중괄호 코딩 스타일
#include <stdio.h>
int main() {
int a, b, c;
scanf_s("%d%d%d", &a, &b, &c);
if (a > b) {
// a > b > c
// a > c > b
// c > a > b
// 3중으로된 연산자를 알 수가 없다.
if ( a > c){ // 최대값으로 만들기위해 중첩문을 사용
printf("%d\n", a);
}
else {// c > a
printf("%d\n", c);
}
else { // b > a
if (b > c) {// b 가 c 보다 크면 b가 최대값이된다.
printf("%d\n", b);
}
else {// c > b
// c가 b보다 크다
printf("%d\n", c);
}
}
}
}
// 최대값만 출력이되는 프로그램
##################################### 코드를 조금 줄이기
#include <stdio.h>
int main() {
int a, b, c;
scanf_s("%d%d%d", &a, &b, &c);
if (a > b) {
if (a > c) {
// 최대값으로 만들기위해 중첩문을 사용
printf("%d\n", a);
}
else {// c > a
printf("%d\n", c);
}
// 위조건을 만족하지않을 경우가 else if가 실행된다.
else if (b > c) {
printf("%d\n", b);
}
else {// c > b
// c가 b보다 크다
printf("%d\n", c);
}
}
// 이코드를 보고 한번에 이해하기 어렵기 때문에 잘 사용 하지않음
}
}
####################################################
if 문안에 문장이 하나만있으면 중가로를 생략이 가능하다
#include <stdio.h>
int main() {
int a, b, c;
scanf_s("%d%d%d", &a, &b, &c);
if (a > b) {
if (a > c)
// 최대값으로 만들기위해 중첩문을 사용
printf("%d\n", a);
else {// c > a
printf("%d\n", c);
}
// 위조건을 만족하지않을 경우가 else if가 실행된다.
else if (b > c)
printf("%d\n", b);
else {// c > b
// c가 b보다 크다
printf("%d\n", c);
}
#######################################코드 한줄에 몰아넣기 - 중가로도 없애면서.
if 문안에 문장이 하나만있으면 중가로를 생략이 가능하다
#include <stdio.h>
int main() {
int a, b, c;
scanf_s("%d%d%d", &a, &b, &c);
if (a > b) {
if (a > c) printf("%d\n", a);
else printf("%d\n", c);
}
else if (b > c) printf("%d\n", b);
else printf("%d\n", c);
}
if 문안에 한문장이들어가더라도 중가로를 쓰자.
'C 언어' 카테고리의 다른 글
C 언어 - ex11_경우나누기 IF문 (0) | 2022.05.15 |
---|---|
C 언어 - ex10_비교연산자와 논리연산자 (0) | 2022.05.15 |
C 언어 - ex09_변수로 연산하기 (0) | 2022.05.15 |
C 언어 - ex08_ 문제 (0) | 2022.05.15 |
C 언어 - ex07_char형과 ascii코드 (0) | 2022.05.15 |