为什么小弟我用||做条件判断可以进行,但是用&&做条件判断后直接跳过了小弟我的输出语句呢?

为什么我用||做条件判断可以进行,但是用&&做条件判断后直接跳过了我的输出语句呢??
为什么我用||做条件判断可以进行,但是用&&做条件判断后直接跳过了我的输出语句呢??跟踪后变量的值都是正确的,
if   (m_WJG   <=   0   ||   m_WJG   >   -37)
{
MessageBox( "putong ");
return;
}
if   (m_WJG   <=   0   &&   m_WJG   >   -37)
{
MessageBox( "putong ");
return;
}
同样两个条件用||的可以进入输出语句,但是换了&&以后他直接跳过了我的输出语句,进入下一个循环判断去了。请问各位这是为什么啊?有什么解决办法吗?

------解决方案--------------------
对啊!因为m_WJG <=-37的时候 这个m_WJG <0||m_WJG> -37为真,这个是条件或判断,就是说只要有一个表达式为真则整个判断语句为真。
而m_WJG <0&&m_WJG> -37为假,这个是条件与判断,就是说只要有一个表达式子为假(m_WJG> -37这个表达式为假)则整个判断语句都为假。