zoukankan      html  css  js  c++  java
  • #2051:Bitset(进制转化)

    Problem Description
    Give you a number on base ten,you should output it on base two.(0 < n < 1000)

    Input
    For each case there is a postive number n on base ten, end of file.

    Output
    For each case output a number on base two.

    Sample Input
    1 2 3

    Sample Output
    1 10 11

    完整代码:三种写法

    //递归法
    #include<stdio.h>
    
    void Bit(int n) {
        if (n) {
            Bit(n >> 1);
            printf("%d", n & 1);
        }
    }
    
    int main() {
        int n;
        while (scanf_s("%d", &n) != EOF) {
            Bit(n);
            putchar('
    ');
        }
        return 0;
    }
    

    利用itoa(i ,num ,10 )函数

    /*
    i ---- 需要转换成字符串的数字
    num ---- 转换后保存字符串的变量
    10 ---- 转换数字的基数(即进制)。10就是说按10进制转换数字。还可以是2,8,16等等你喜欢的进制类型
    返回值:指向num这个字符串的指针
    */
    #include<stdio.h>
    #include<stdlib.h>
    int main() {
        int n;
        while (scanf("%d", &n) != EOF) {
            char str[4000];
            itoa(n, str, 2);
            printf("%s
    ", str);
        }
        return 0;
    }
    

    正常写法(雾

    #include<stdio.h>
    int main()
    {
        int i,j,k,l;
        __int64 m[100];
        while(scanf("%d",&i)!=EOF)
        {
            k=i;
            for(j=0;j<100;j++)
            {    
                m[j]=k%2;
                k=k/2;
                if(k==0) break;
            }
            for( ;j>=0;j--)
            printf("%I64d",m[j]);
            printf("
    ");
        }
        return 0;
    }
    
  • 相关阅读:
    jQuery 选择器
    Linux vs Window
    Git是什么?
    JS三大经典变量命名法
    常用html、CSS、javascript前端命名规范
    Ajax中Get请求与Post请求的区别
    HTTP 请求方式: GET和POST的比较
    poj2195 Going Home
    bzoj1059 [ZJOI2007]矩阵游戏
    bzoj1191 [HNOI2006]超级英雄Hero
  • 原文地址:https://www.cnblogs.com/RioTian/p/12766204.html
Copyright © 2011-2022 走看看