算法训练 进制转换(2转10)

来源:互联网 发布:道德经足不出户知天下 编辑:程序博客网 时间:2024/05/21 19:34

  算法训练 进制转换  

时间限制:1.0s   内存限制:512.0MB

    

问题描述

  编写一个程序,输入一个二进制的字符串(长度不超过32),然后计算出相应的十进制整数,并把它打印出来。
  输入格式:输入为一个字符串,每个字符都是’0’或’1’,字符串的长度不超过32。
  输出格式:输出一个整数。
  输入输出样例

样例输入

1101

样例输出

13

 分析:

2进制转10进制,用我们数学中日常用的方法即可。

#include <stdio.h>#include <string.h>#include <math.h>int main(){    char a[32];    int sum=0;    gets(a);    int i,j;    j=strlen(a)-1;    for(i=j;i>=0;i--)        {            if(a[i]=='1')                sum+=pow(2,j-i);        }    printf("%d\n",sum);    return 0;}


原创粉丝点击