zoukankan      html  css  js  c++  java
  • shu_1171 十->二进制转换(输入输出控制)

    http://202.121.199.212/JudgeOnline/problem.php?cid=1079&pid=19


    分析:主要是输出格式控制

      “对于每一个n,以11位的宽度右对齐输出n值”: 即包含该数在内一共11位,右对齐为printf的默认方式。所以用 %11d  来解决。

       另外,

             输出左对齐与右对齐,需在指定输出长度的时候才有意义; 如无指定长度,则输出从行首開始,有多长输出多长。

             左对齐: %-11d

      实例:

      

    #include <stdio.h>
    
    int main()
    {
        int a=123;
        int b=1234;
        int c=12345;
        printf("%d
    %d
    %d
    ",a,b,c);  //没有规定输出长度
        printf("
    %11d
    %11d
    %11d
    ",a,b,c); //11位宽右对齐
        printf("
    %-11d
    %-11d
    %-11d
    ",a,b,c); //11位宽左对齐
        return 0;
    }
    



    代码:

    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>
    #include <ctype.h>
    #include <math.h>
    #include <iostream>
    #include <string>
    using namespace std;
     
    int main()
    {
        int n;
        char buf[32];
        while(scanf("%d",&n)!=EOF){
          /*  if(n>=0)
               printf("%11d-->%s
    ",n,itoa(n,buf,2));
            else
                printf("%11d-->-%s
    ",n,itoa(-n,buf,2));
        */
            printf("%11d-->",n);
            if(!n) { printf("0
    "); continue;}
            if(n<0) { n=-n; printf("-");}
            string str="";
            while(n){
                str +=n%2 +'0';
                n /=2;
            }
            for(int i=str.length()-1;i>=0;i--)
                cout<<str[i];
            cout<<endl;
        }
        return 0;
    }


  • 相关阅读:
    redis--列表
    redis ——字符串
    redis 第一节 redis安装、PHP扩展 、主从
    Python--day7
    Python--day6
    Python爬虫
    JSON基础
    Python--day5
    Python—day3
    Windows10 安装QT问题
  • 原文地址:https://www.cnblogs.com/llguanli/p/8409741.html
Copyright © 2011-2022 走看看