e258.c

if(変数|定数)は常に真


修正前 if ( x|1 ){
修正後 if ( x&1 ){
解説 非ゼロ定数で、ビットOR演算すると 結果は必ず「非ゼロ」となるので、 単純に、ビットAND演算と間違えている可能性があります。