怎么写一个二进制转为十进制的程序?

来源:3-2 算术运算符

慕尼黑4544913

2019-03-23 11:20

能解释下么?谢谢。

写回答 关注

1回答

  • 大田酱紫
    2019-03-23 17:09:36

    #include<stdio.h>
    #include<math.h>
    int A(int n,int a)
    {
     int sum;
     if(n==0)
     {
      return 0;
     }
     else
     {
      sum=(int)pow(2,n-1)*(a/((int)pow(10,n-1)))+A(n-1,a%((int)pow(10,n-1)));
     }
     return sum;
    }
    main()
    {
     int n,a;
     printf("输入的二进制数的位数:");
     scanf("%d",&n);
     printf("二进制数:");
     scanf("%d",&a);
     printf("对应的十进制数:%d",A(n,a));
    }

    这个程序只能计算无小数位的二进制数的十进制化,并且需要提供二进制数的位数,运用的是递归函数的方法,在下才疏学浅,只能弄这样鸟

    慕桂英134...

    你的程序运行结果出错了。

    2019-04-01 15:25:35

    共 1 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926207 学习 · 20797 问题

查看课程

相似问题