본문 바로가기

백준 문제풀이/조건문

백준 10817 C / 단계별로 풀어보기 - if문 5

 

안녕하세요.

if문의 마지막인 10817번 세 수 입니다.

https://www.acmicpc.net/problem/10817

 

10817번: 세 수

첫째 줄에 세 정수 A, B, C가 공백으로 구분되어 주어진다. (1 ≤ A, B, C ≤ 100)

www.acmicpc.net

 

이번에는 삼항연산자도 한 번 다뤄볼겸 써보도록 하겠습니다.

삼항연산자는

A = 조건식 ? B : C 이런 식으로 쓰는데요,

조건식이 맞으면 A = B 가 되고, 아니면 A = C가 됩니다.

 

A B C 입력을 받아서 두 번째로 큰 수 출력이네요.

A B 를 비교해보고, C 랑도 비교해봐야겠군요.

 

코드를 짜면 이렇게 되겠네요.

 

#include <stdio.h>

int main()
{
	int A = 0, B = 0, C = 0, second = 0;
	scanf("%d %d %d", &A, &B, &C);
	if (A < B)
	{
		if (B < C) // C > B > A
			printf("%d", B);
		else
		{
			second = A > C ? A : C;
			printf("%d", second);
		}
	}
	else // (A >= B)
	{
		if (B > C)
			printf("%d", B);
		else
		{
			second = A > C ? C : A;
			printf("%d", second);
		}
	}
	return 0;
}

 

 

이런식으로 짜보았습니다.

이해 안되시는 부분이 있거나, 조언 해주실 분은 댓글 달아주세요.

 

감사합니다.