C语言——二进制转为十进制

#include <stdio.h>
#include <math.h>
//二进制转换为十进制
int convertBinaryToDecimal(long long n);
int main()
{
  long long n;
  printf("请输入一个二进制数:");
  scanf("%lld",&n);
  printf("二进制数%lld 转换为十进制为 %d\n",n,convertBinaryToDecimal(n));
  return 0;
}

int convertBinaryToDecimal(long long n)
{
  int decimalNumber = 0,i=0,remainder;
  while(n!=0){
    remainder = n%10;   //取余数,
    n /=10;    //取剔除最后一位的数。
    decimalNumber += remainder*pow(2,i); //1111,result = 1+1*2+1*2*2+1*2*2*2
    ++i;
  }
  return decimalNumber;
}
    原文作者:taojYang
    原文地址: https://blog.csdn.net/weixin_43293451/article/details/90604263
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞