C语言:二进制换十进制

输入格式
第一行一个正整数 n\ (1\le n\le 30)n (1≤n≤30),表示二进制数的长度。

第二行一个二进制数。

输出格式
输出一个整数,表示对应的十进制数。


  #include<stdio.h>
  int main(void)
   {
   int a;
   scanf("%d",&a);
  int sum = 0;
   getchar();//读取每个数字
  while (a--)
  {
   sum *=2; sum += getchar() - '0'; //累乘
   } 
 printf("%d\n",sum);
   return 0; 
  }

输入一个数,令sum=0,使用getchar读取每个数字,运用while语句,使用累乘的方法,输入sum*2,从而得出二进制的最高项,使得二进制转化为十进制。


版权声明:本文为weixin_62690039原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。