|  | 
 
| 
x
马上注册,结交更多好友,享用更多功能^_^您需要 登录 才可以下载或查看,没有账号?立即注册  复制代码#include <stdio.h> 
void print_binary(unsigned int n) {
        //在这里补充
}
int main(void) {
        unsigned int num;
        
        scanf("%d", &num);
        print_binary(num);
        
        return 0;
}
 就是将176=10110000
 
 本帖最后由 风过无痕1989 于 2020-10-7 11:13 编辑 
复制代码// 将十进制数转换成二进制数
#include <stdio.h>
void print_binary(unsigned int n)
{
    int i,a[8] = {0},b[8] = {0};
        for (i = 0;i < 8;i++)
        {
        if (n >= 2)
                {
                    a[i] = n % 2;
                    n /= 2;
                }
                else
                {
                        a[i + 1] = n;
                        break;
                }
        }
    for (i = 0;i < 8;i++)
        {
            b[7 - i] = a[i];     // 调换成正常的二进制高低位
        }
// 若输入为有符号数,则加上下面注释这一段
/*        if(n >0)
        {
            a[7] = 1;            // 若输入为正数,最高位为 1
        }
        else
        {
            a[7] = 0;            // 若输入为负数,最高位为 0
        }
*/
        for (i = 0;i < 8;i++)
        {
            printf("%d",b[i]);
        }
        printf("\n");
}
int main(void)
{
    unsigned int num;
       
    scanf("%d", &num);
    print_binary(num);
       
    return 0;
}
 | 
 |