10 求二进制表示位数
作者: zwz时间限制: 1S章节: 基本练习(循环)
问题描述 :
给定一个十进制整数,返回其对应的二进制数的位数。例如,输入十进制数9,其对应的二进制数是1001,因此位数是4。
输入说明 :
输入一个整数,大小在int表示范围内。
输出说明 :
一个整数
输入范例 :
9
输出范例 :
4
import java.util.Scanner;
public class test_10 {
/**
* 10 求二进制表示位数
*/
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
int sum=1;
for (int i = 1; i <=num; i++) {
sum*=2;
if(sum==num){
System.out.println(i+1);
break;
}else if(sum>num){
System.out.println(i);
break;
}
}
}
}