z17783450685 2021-12-17 18:24 采纳率: 50%
浏览 131

十进制转为二进制,实在不知道如何实现多个数转换并输出,C语言

编写一个函数,其参数是一个整数N,返回值也是一个整数(假设是R),规则是整数R写出来(输出出来)是N的二进制形式。例如:参数是15,返回值应是1111。主函数中输入若干组整数,依次输出其二进制形式。

输入样例:
15 16 17 63 64 65
结尾无空行
输出样例:
1111
10000
10001
111111
1000000
1000001
结尾无空行
输入样例:
0 1 123 456 789
结尾无空行

  • 写回答

2条回答 默认 最新

  • _GX_ 2021-12-17 19:14
    关注
    #include <stdio.h>
    
    int f(int n) {
        int r = 0;
        int b = 1;
        while(n) {
            r += (n % 2) * b;
            n /= 2;
            b *= 10;
        }
        return r;
    }
    
    int main()
    {
        int n;
        while (scanf("%d", &n) == 1)
            printf("%d\n", f(n));
        return 0;
    }
    
    评论

报告相同问题?

问题事件

  • 创建了问题 12月17日

悬赏问题

  • ¥15 onlyoffice编辑完后立即下载,下载的不是最新编辑的文档
  • ¥15 求caverdock使用教程
  • ¥15 Coze智能助手搭建过程中的问题请教
  • ¥15 12864只亮屏 不显示汉字
  • ¥20 三极管1000倍放大电路
  • ¥15 vscode报错如何解决
  • ¥15 前端vue CryptoJS Aes CBC加密后端java解密
  • ¥15 python随机森林对两个excel表格读取,shap报错
  • ¥15 基于STM32心率血氧监测(OLED显示)相关代码运行成功后烧录成功OLED显示屏不显示的原因是什么
  • ¥100 X轴为分离变量(因子变量),如何控制X轴每个分类变量的长度。