ET


私信TA

用户名:wbc

访问量:28264

签 名:

我又双叒叕回来看了一眼

等  级
排  名 33
经  验 6684
参赛次数 3
文章发表 67
年  龄 0
在职情况
学  校 DLMU
专  业 网络工程

  自我简介:

C++兼容C,所以不要问为什么我所有的提交都是C++的.... 不AC,毋宁死,代码越短越好,思路越清奇越好hhhhhhhh

解题思路:
对二取余数,存储,然后除以二,最后反向输出。。。




注意事项:
注意负数的处理以及零的处理。。。




参考代码:

#include <stdio.h>

int main() {
    int n;
    int i;
    int ans[20];
    while (scanf("%d", &n) != EOF) {
        printf("%d-->", n);
        if (n < 0) {
            printf("-");
            n = -n;
        } else if (n == 0) {
            printf("0\n");
            continue;
        }
        i = 0;
        while (n != 0) {
            ans[i++] = n % 2;
            n /= 2;
        }
        for (i--; i > 0; i--) {
            printf("%d", ans[i]);
        }
        printf("%d", ans[i]);
        printf("\n");
    }
    return 0;
}


 

0.0分

0 人评分

C语言网提供「C语言、C++、算法竞赛」在线课程,全部由资深研发工程师或ACM金牌大佬亲授课,更科学、全面的课程体系,以在线视频+在线评测的学习模式学习,学练同步,拒绝理论派,真正学会编程!还有奖学金等增值福利等你!

  评论区