왜 틀렸는지 모르겠습니다..
unsigned 자료형의 최소 사이즈는 0이 아닌가요? 인터넷에 찾아본 결과 UCHAR_MAX 함수는 있어도 UCHAR_MIN 같은 함수는 없던데.. 이 부분 말고는 특별히 틀릴만한 부분이 잘 안 보입니다.
unsigned의 최솟값은 0 맞습니다!
LONG_MAX를 %d로 출력하면 안되고,
unsigned int와 unsigned long 의 최댓값은 UCHAR_MAX가 아닙니다
아 너무 큰 실수를 했었네요.. 해결되었습니다. 감사합니다!