C 언어 - ex12_중첩 if문

2022. 5. 15. 23:23·C 언어

// 중첩 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
'C 언어' 카테고리의 다른 글
  • C 언어 - ex11_경우나누기 IF문
  • C 언어 - ex10_비교연산자와 논리연산자
  • C 언어 - ex09_변수로 연산하기
  • C 언어 - ex08_ 문제
taktaks
taktaks
보안 연습 일기장입니다. 모든 연습은 불법적인 용도로 사용하지 말아주시길 부탁드립니다. 용무는 wndudxkr2005@gmail.com 메일 부탁드립니다.
  • taktaks
    taktaks
    taktaks
  • 전체
    오늘
    어제
    • 보안 일지 (280)
      • 네트워크 구축 (12)
      • 리눅스 보안구축 (10)
      • 파이썬 기본 (11)
      • Web hacking (39)
      • 통합 인프라 보안 (41)
      • 공격기법 및 탐지 (33)
      • 악성코드 및 포렌식 (93)
      • 리버싱 (5)
      • 시스템 해킹 (20)
      • C 언어 (12)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      프롯
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    taktaks
    C 언어 - ex12_중첩 if문
    상단으로

    티스토리툴바