A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

//计算器10进制转换为二进制,    输入一个十进制数,将他转化成一个二进制数输出,且输出每八位空一格

#include <stdio.h>

int main(int argc, const char * argv[])
{
    //让用户输入一个10进制数字
    //接收用户输入的十进制数字保存到变量中
    printf("请输入一个10进制的数字:\n");
    int num = 0;
    scanf("%d",&num);

    //判断这个10进制的数字是正数还是负数

    int num0[32] = {0};
    num>0?num0[0]=0:(num*=(-1),num0[0]=1);

    //将每次%2的结果保存到数组中,逆序保存
    for (int i = 0; i < 31; i++)
    {
        num0[31-i]=num%2;
        num /= 2;
    }
    //循环输出所有数组元素 遇到8就打印空格
    for (int i = 1; i <=32; i++)
    {
        printf("%d",num0[i-1]);
        if (i%8==0)
        {
            printf(" ");
        }
    }
    return 0;
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马