문제 - 세 개의 정수를 받아서 가장 큰 수를 반환하고 가장 작은 수를 반환하라
제한 - 없음

#include <stdio.h>
int max(int a, int b, int c){
if(a>b){
return (a>c) ? a : c;
}else{
return (b>c) ? b : c;
}
}

int min (int a, int b, int c){
if(a<b){
return (a<c) ? a : b;
}else{
return (b<c) ? b : c;
}
}

int main(){
int a,b,c;
scanf("%d %d %d", &a,&b,&c);
printf("max %d \n", max(a,b,c));
printf("min %d \n", min(a,b,c));
return 0;
}

팁 - a,b,c 중에 a가 가장 큰가를 구한 이후에 b와c를 비교하여 둘중 큰 것을 반환한다.
실질적으로 첫번째 조건연산자는 a가 가장 큰지만 비교함
두번째 조건연산자는 a가 가장 크지 않기 때문에 b와 c 중에 큰 수를 반환함

블로그 이미지

ryancha9

https://blog.naver.com/7246lsy

,