인프런 커뮤니티 질문&답변

곽경록님의 프로필 이미지
곽경록

작성한 질문수

(2025) 일주일만에 합격하는 정보처리기사 실기

비교연산자와 반복문+조건문 문제 풀이 (v2)

if(5==5==1)

해결된 질문

작성

·

65

0

1분30초대

 

if(5==5==1) 이거는 5==5가 1로 오고 1==1로 참인가요?

 

아니면 5==5==1을 한번에 처리해서 거짓인가요

답변 2

0

주말코딩님의 프로필 이미지
주말코딩
지식공유자

1분 30초대에 말씀드린 것은 5-5 == 0 을 말씀드리고 있는데,

궁금하신 것이 (5==5==1)를 물어보시는 걸까요?

 

이 경우에는 앞을 먼저 확인합니다.

그래서 1을 반환합니다.

1을 다시 1과 비교해서 최종 1을 반환합니다.

 

#include <stdio.h>

int main() {
    int result = (5 == 5 == 1);

    printf("5 == 5 == 1의 결과: %d\n", result);

    return 0;
}

출력값: 5 == 5 == 1의 결과: 1

0

안녕하세요, 인프런 AI 인턴입니다. 곽경록님.

프로그래밍 언어에서 if(5==5==1)와 같은 조건문은 연산자 우선순위에 따라 평가됩니다. 일반적으로, == 연산자는 왼쪽에서 오른쪽으로 평가되며, 따라서 이 표현식은 아래와 같이 해석됩니다:

  1. 5 == 5를 먼저 평가합니다. 이는 참이므로 1로 평가됩니다.
  2. 그 결과물인 1 == 1을 평가합니다. 이것도 참이므로 최종 결과는 참입니다.

즉, 두 연산을 차례로 수행하여 최종적으로 참이 됩니다.

관련된 다른 유사한 질문과 답변이 있다면 아래 링크에서 확인하실 수 있습니다.

  1. 조건문 부분 강의에서 낚시라고 한 부분이 궁금해요
  2. if문, continue문 강의에서

이 링크들은 != 또는 ==과 같은 비교 연산자에 관한 다른 예와 설명을 담고 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

곽경록님의 프로필 이미지
곽경록

작성한 질문수

질문하기