- 입력된 두 정수 a, b 중 큰 값을 출력하는 프로그램을 작성해보자.
단, 조건문을 사용하지 않고 3항 연산자 ? 를 사용한다.#include <stdio.h> int main() { int x,y; scanf("%d %d",&x,&y); (x>y)? printf("%d",x):printf("%d",y); return 0; }
삼항연산자는 그냥 한줄로 쓰는 if문이라고 보면 될것같다.
(조건)? 조건이참일때 : 조건이 거짓일때
로 쓰는데, 개인적으로는 가독성이 약간 떨어져서 그냥 엄청 간단한 조건문에만 쓰는게 좋을것 같다.
그래도 간결해서 코드자체는 안길어지는듯
- 입력된 세 정수 a, b, c 중 가장 작은 값을 출력하는 프로그램을 작성해보자.
단, 조건문을 사용하지 않고 3항 연산자 ? 를 사용한다.#include <stdio.h> int main() { int x,y,z; scanf("%d %d %d",&x,&y,&z); (x>y)? (y>z)? printf("%d",z):printf("%d",y):(x>z)? printf("%d",z):printf("%d",x); return 0; }
아까보다는 좀더 길어진것 같은데 그냥 한줄로쓴 중첩 if문이다.
if()
{
if()
{
}
else
{
}
}
else
{
if()
{
}
else
{
}
}