[刷题] PTA 32位前导零

PTA

 1 #include <stdio.h>
 2 int main(){
 3     //无符号整型才能表达32位二进制数对应的十进制数
 4     unsigned int decimalNum;
 5     unsigned int digitsCount=0;
 6     scanf("%u", &decimalNum);
 7     while(decimalNum){
 8         digitsCount++;
 9         decimalNum /= 2;
10     }
11     printf("%u
", 32-digitsCount);
12 
13     return 0;
14 }

分析:

1、实际是求十进制数转成二进制后的位数

2、将待求数一直除以2直到0时的次数,即等于对应二进制数的位数

原文地址:https://www.cnblogs.com/cxc1357/p/10758399.html