c how to program 习题3.35

发布于2020-05-13 786 热度

运行结果:

C语言代码:

/* c how to program 习题3.35 */
#include <stdio.h>

// function main begins program execution
int main( void )
{
    //定义变量 二进制数值binary 临时数值temp 每位的数值bit 基数factor 十进制数值decimal
    int binary, temp, bit, factor = 1, decimal = 0;
    //获取一个五位的二进制数值
    printf("请输入一个五位的二进制的数值:");
    scanf("%d", &binary);

    //计算该数值的十进制
    temp = binary; //用temp1来代替binary来运算,以免改变binary的值
    //当temp不等于0时执行循环
    while(temp){
        //取得当前temp的最后一位数字赋值给bit
        bit = temp % 10;
        //factor是二进制值的基数,十进制数值decimal等于二进制的每个组成数值*对应的基数
        decimal += bit * factor;
        //把temp1的最后一位去掉,进行计算下一位
        temp /= 10;
        //更新下一位的基数
        factor *= 2;
    }
    //计算完后,打印结果
    printf("\n二进制%d的十进制数值是:%d\n", binary, decimal);
}

记录工作,记录学习,分享知识,分享经验……