题目描述
功能: 求一个byte数字对应的二进制数字中1的最大连续数,例如3的二进制为00000011,最大连续2个1
输入: 一个byte型的数字
输出: 无
返回: 对应的二进制数字中1的最大连续数
输入描述:
输入一个byte数字
输出描述:
输出转成二进制之后连续1的个数
#include<iostream>
using namespace std;
int main()
{
int ret=0;
int num;
int big=0;
while(cin>>num)
{
int k=1;
for(int i=0;i<32;i++)
{
if(num&(k<<i))
{
ret++;
if(ret>big)
big=ret;
}
else
{
ret=0;
}
}
cout<<big<<endl;
ret=0;
big=0;
}
}