c언어 if 안에 조건들을 묶는 방법


if((num1 != 0 && num2 != 0 && num1 == num2) || (num1 != 0 && num2 != 0 && num1 == num2)) {
사진 예시
}

이미지

위 사진의 형태로 if 안에 조건들을 묶을 수 있나요?

저런식으로 해봤더니 if 안쪽이 실행이 안되더군요 해결 방법이 있다면 가르쳐 주셨으면 합니다!


조회수 104


2 답변


if(num1 != 0)

은 if(num1) 으로 줄여서 코딩 가능합니다.

https://www.le.ac.uk/users/rjm1/cotter/page_37.htm 참조

소스가 길어져서 제대로 조건식을 제대로 파악하지 못하는거 같습니다.

소스 리펙토링 하고 다시 조건식 파악하시고 안되면 더 위쪽의 변수들이 어떻게 조작되는지 추가 첨부 바랍니다.

  • 2016년 11월 03일에 작성됨
    Programmer


질문을 이해 못하겠습니다.

위의 코드는 (num1 != 0 && num2 != 0 && num1 == num2) 조건식 2개가 || 로 연산되는데,

if ((num1 != 0 && num2 != 0 && num1 == num2) || (num1 != 0 && num2 != 0 && num1 == num2)) {}

이것과

if ((num1 != 0 && num2 != 0 && num1 == num2)) {}

이것의 차이가 있나요?

그리고 위의 조건식은

num1=1, num2=1 이면 조건을 충족하네요.
결국 num1, num20이 아니고 같지않으면 조건이 충족됩니다.

  • 2016년 11월 07일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close