0不属于正整数。
m=1特殊处理,直接输出0即可。
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int m = scanner.nextInt();
int i = 1;
int n = 1;
if (m==1) {
System.out.println(0);
return;
}
while (!(2*i<=m && m <=2*i*2)) {
n++;
i = i * 2;
}
System.out.println(n);
}