범위 질문드립니다!
322
작성한 질문수 14
#include<stdio.h>
int main(){
int height;
scanf("%d",&height);
if(120<=height<=150){
printf("YES");
}
else{
printf("NO");
}
return 0;
}
제가 미리 짜본 코드였는데 120<=height<=150이 if문 조건식에 들어오지 못하는 이유는 무엇인가요? 제가 무언가를 착각하고 있는걸까요 ㅠㅠ
코드 결과는 어떤 수를 집어넣어도 YES가 출력되었었습니다..
답변 1
0
C언어는 친절한 언어가 아닙니다. if(120<=height<=150)과 같은 구문을 수학처럼 120부터 150사이면 참이다. 이렇게 친절하게 해석해주지 않습니다. 위 구문이 해석되는 형태는 120<=height를 먼저 연산해 참이면 1, 거짓이면 0의 결과를 얻습니다.
그 결과값(0또는 1)과
결과값<=150의 연산을 합니다. 그래서 항상 참이 되는 것입니다.
음료수 자판기 출력이 이상하게 나옵니다
0
142
2
i 값 초기화 질문
0
70
2
recipe for targe 'AA.exe' failed
0
63
1
30과 10의 xor
0
191
1
커리큘럼 문의 드립니다
0
232
1
for문에서 sum 관련 질문
0
179
1
이렇게 풀어도 맞는걸까요?
0
253
2
이렇게 풀어도 맞는 풀이일까요?
0
302
1
20페이지 홀,짝,제로 문제에서 이 코드로 짜도 괜찮을까요?
0
257
1
24. 최솟값 구하기
0
333
1
질문 있습니다.
0
325
1
배열을 전역변수로 설정하는 이유
1
666
1
41. A를 #으로에서 질문 있습니다.
0
291
1
20번 소수 판별하기에서 질문 있습니다.
0
423
1
42번 bus error;;;
0
612
1
정수형 배열에서 배열 크기
0
395
1
38. 자리찾기 커지는 방향으로..
0
303
1
37. 배열의 회전에서 ...
0
280
1
1차원 배열에서
0
270
1
지수연산에서
0
300
1
7.연필 개수 문제
0
381
1
a=(int)a 에서 왜 괄호를 붙이나요 a=int a 는 왜안되나요
0
847
1
섹션 6. 소수
0
323
1
왜 2중for문을 두개 쓴건가요?
0
244
1





