我们想要知道一个十进制数转换成二进制数的位数,首
现需要一直将一个十进制数/2直到这个十进制数 = 0,在统计/2的次数 + 1,就是二进制数的位数
就可以得到这段代码
while(n == 0){
n = n / 2;
sum++;
}
然后导入库,定义变量,读入变量
#include <bits/stdc++.h>
#include <string>
#include <vector>
#include <cstdio>
#include <cstring>
using namespace std;
int main(){
int n,sum = 0;
cin>>n;
return 0;
}
再加入关键代码,输出
while(n == 0){
n = n / 2;
sum++;
}
cout<<sum<<endl;
总代码就是:
#include <bits/stdc++.h>
#include <string>
#include <vector>
#include <cstdio>
#include <cstring>
using namespace std;
int main(){
int n,sum = 0;
cin>>n;
while(n == 0){
n = n / 2;
sum++;
}
cout<<sum<<endl;
return 0;
}