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

태라님의 프로필 이미지

작성한 질문수

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

Python언어 기출문제의 변형 (v2)

C언어 3개 비교연산자

해결된 질문

24.07.07 11:05 작성

·

149

·

수정됨

0

  • a=10 b=5가 다르고

  • b=5 c=8이 다르고

  • a=10 c=8이 다르고


    위 세가지 문장에 따라서 if(true)가 되어


    "세 수는 모두 다릅니다" 가 출력되는 건가요?



    아니면

  • a !=b 가 (true)이고
    (true) != c 이렇게 봐야하는 건가요?

    1000023052.jpg

    이해가 어려운 섹션이나 영상 설명은 질문으로 꼭 남겨주세요.

  • 기출문제를 풀다가 막힌 개념이 있나요? 질문으로 회차나 번호, 개념을 예시로 질문해주세요. 답변에 도움이 됩니다.

  • 이론 문제는 통합본 PDF 파일로 제공될 예정입니다. (6월 중 업로드 예정)

  • 합격을 가르는 것은 역시 코드해석문제. 이론을 외울 시간이 없다면 코드에 익숙해지고, 중요 개념을 몇 가지 외워가면 합격할 수 있습니다.

답변 2

0

태라님의 프로필 이미지
태라
질문자

2024. 07. 07. 19:28

그럼 a !=b 가 (true)니까 1이고

1 이랑 c(값5)가 같지 않으니까 true로 보고

세 수는 모두 다릅니다

가 출력되는걸로 이해하면 되나요???

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

2024. 07. 07. 19:42

네 맞습니다.

다만 저렇게 하는 것은 원래 의미상 구하려는 결과와는 틀린 예제입니다.

아마 제가 해설하면서 언급했는지 모르겠네요.

 

C언어에서 정확하게 세 개의 숫자가 다른지 판단하려면

(a!=b) && (a!=c) && (b!=c) 이렇게 해야합니다.

저 예제의 경우 앞에서 1이 나오고, 그 뒤에 1과 c의 값이 같은지 판단하고

다른 경우에 참이 나옵니다.

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

2024. 07. 07. 19:43

혹시 저 부분 어느 강좌 몇 분 대인지 말씀 가능하실까요?

0

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

2024. 07. 07. 11:11

네, 앞에서부터 순서대로 비교해주시면 됩니다.

a!=b에서 나온 값을 다시 c와 같지 않은지를 판단하면 됩니다.

 

참고로 C언어에서는 true / false를 리턴하지 않습니다. 1 / 0이 리턴됩니다.

 

태라님의 프로필 이미지

작성한 질문수

질문하기