2进制转换,除2取余,逆序排列。

#include<stdio.h>
int main(){
    int n;
    while(~scanf("%d",&n)){
        int max=1;  //假设当前最大连续为1
        for(int seq=0;n>0;n/=2){
            if(n%2!=0){
                seq++;  //连续进行累加
                if(seq>max) max=seq;  //如果超过就修改当前最大连续数
            }
            else seq=0;  //断连就重置计数
        }printf("%d\n",max);
    }
}