title: allOddBits return 1
body: <p>Hello the function is called allOddBits with one input so if the function identifies 1 when the odd numbered bits are then it will return 1 otherwise it return 0;
  Thank you for the help in advance. 
  We are only allowed to use these ! ~ &amp; ^ | + &lt;&lt; >> bit operation not more than 12 times. This way is always returning a 1 which is not correct because when the value of 'a' doesn't have odd numbered bits equal to 1, it should not return 1.</p>
  
  <pre><code>int main(int argc, char *argv[]) {
  unsigned a,c;
  a= 0xAAAAAAAA; // given  bits, it can be anything
  c= a&gt;&gt;31;      // Shifting 31 bits to the right and fill in 0 instead 
  c= ~c;         // flipping the bits so it can all be 1 except for LSB
  
  printf(": %u\n", !!c);
  }
  </code></pre>
  
  <p>Never mind guys,.. I figured out the solution but it did take some time. I appreciate your input though.</p>