9

printf格式化输出 - JackPeng博客

 3 years ago
source link: http://yuanfentiank789.github.io/2018/10/27/printf%E6%A0%BC%E5%BC%8F%E5%8C%96%E8%BE%93%E5%87%BA/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

玩acm的都清楚,cin/cout在大家眼里跟没有一样,凡输入输出都是用c的函数的。

可偏偏c中没有bool这个类型,好吧,其实输出bool是当整形输出的。

#include <cstdio.h>
 
int  main()
{
   bool  b = true;
   printf("%d\n",b);
   bool  c = false;
   printf("%d\n",c);
   return 0;
}

顺便复习一下scanf和printf

1、scanf函数返回值为整型。若成功则返回输出的字符数,输出出错则返回负值。

    常用于判断eof的情况啦。

2、%d 十进制有符号整数   

      %u 十进制无符号整数    

      %f 浮点数    

      %s 字符串     

      %c 单个字符     

      %p 指针的值     

      %e 指数形式的浮点数     

      %x,%X 无符号以十六进制表示的整数    

      %o 无符号以八进制表示的整数    

      %g 自动选择合适的表示法 

     注意:acm用的最多的当是  %lf    double类型           %lld       long long 类型       3、

(1). 可以在”%”和字母之间插进数字表示最大场宽。    

      例如: %3d 表示输出3位整型数, 不够3位右对齐。     

                %9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为6,    小数点占一位, 不够9位右对齐。     

                %8s 表示输出8个字符的字符串, 不够8个字符右对齐。     

         如果字符串的长度、或整型数位数超过说明的场宽, 将按其实际长度输出。    但对浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实际整数位输出;    若小数部分位数超过了说明的小数位宽度, 则按说明的宽度以四舍五入输出。    

(2)若想在输出值前加一些0, 就应在场宽项前加个0。     例如: %04d 表示在输出一个小于4位的数值时, 将在前面补0使其总宽度为4位。     

 (3)如果用浮点数表示字符或整型量的输出格式, 小数点后的数字代表最大宽度,  小数点前的数字代表最小宽度。    

      例如: %6.9s 表示显示一个长度不小于6且不大于9的字符串。若大于9, 则    第9个字符以后的内容将被删除。



About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK