for n>0; k++{
n<<1
}
return k
#include <stdio.h>
int f(int n) {
int k = 0;
if((n & 0xFFFF) == 0) k = 16, n >>= 16;
if((n & 0x00FF) == 0) k += 8, n >>= 8;
if((n & 0x000F) == 0) k += 4, n >>= 4;
if((n & 0x0003) == 0) k += 2, n >>= 2;
if((n & 0x0001) == 0) k += 1;
return k;
}
int main(void) {
printf("%d\n", f(128));
return 0;
}