2402_89321029 2024-12-05 19:52 采纳率: 20%
浏览 7

这个怎么用C语言写?

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

输入样例:
15 16 17 63 64 65
输出样例:
1111
10000
10001
111111
1000000
1000001

  • 写回答

1条回答 默认 最新

  • 关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    这是一个简单的C语言编程问题,您可以使用位运算来将一个整数转换为它的二进制形式并打印出来。以下是具体的实现方法:

    #include <stdio.h>
    
    // 将整数转换为二进制并打印出来的函数
    void printBinary(int num) {
        if (num == 0) {
            printf("0\n");
            return;
        }
        
        while (num > 0) {
            printf("%d", num & 1); // 打印最低位(最后一位)
            num >>= 1; // 右移一位,相当于舍弃最低位
        }
        printf("\n"); // 打印完一个数字的二进制后换行
    }
    
    int main() {
        int N;
        while (scanf("%d", &N) != EOF) { // 读取输入直到文件结束符EOF
            printBinary(N); // 调用函数打印整数的二进制形式
        }
        return 0;
    }
    

    这段代码首先定义了一个函数printBinary,该函数接收一个整数作为参数,并将其转换为二进制形式打印出来。然后在主函数main中,我们读取输入直到遇到文件结束符(EOF),然后调用printBinary函数来打印每个整数的二进制形式。

    评论

报告相同问题?

问题事件

  • 创建了问题 12月5日