欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C语言格式化输出printf

程序员文章站 2022-07-15 09:26:38
...

C语言格式化输出printf

#include <stdio.h>
#include <stdlib.h>

int main()
{
    // 基本用法:
    int a = -5;
    printf("a = %d \n",a); // 有符号整数
    // -5
    printf("a = %u \n",a); // 无符号整数
    // 1000 0000 0000 0000 0000 0000 0000 0101 原码
    // 1111 1111 1111 1111 1111 1111 1111 1010 反码
    // 1111 1111 1111 1111 1111 1111 1111 1011 补码
    // 0111 1111 1111 1111 1111 1111 1111 1011 去除符号
    printf("a = %x \n",a); // 以16进制表示的有符号整数
    // 1111 1111 1111 1111 1111 1111 1111 1011 -> fffffffb
    printf("a = %o \n",a); // 以10进制表示的有符号整数
    // 1111 1111 1111 1111 1111 1111 1111 1011 -> ‭37777777773‬
    float f = 10.0f;
    double d = 11.0f;
    printf("f = %f \n",f);
    // 10.000000
    printf("d = %lf \n",d);
    // 11.000000
    // %e 指数形式的浮点数
    printf("0.123 = %e \n",0.123);
    // 1.230000e-001
    // %s 字符串
    printf("hello %s \n","world");
    // %c 字符
    printf("ch = %c \n",'c');
    // %p 指针的值 a的地址
    printf("a = %p \n",&a);
    // 特殊应用:
    int b = 5;
    float t = 3.1415926f;
    printf("b=**%3d**\n",b); // 要求宽度为3位,如果不足3位,则前面用空格补充,如果超过3位,则无效 __5
    printf("b=**%03d**\n",b); // 要求宽度为3位,如果不足3位,则前面用0补充,如果超过3位,则无效 005
    printf("b=**%-3d**\n",b); // 要求宽度为3位,如果不足3位,则后面用空格补充,如果超过3位,则无效 5__
    printf("t=**%7.3f**\n",t); //要求小数点后保留3位  t=**  3.142**

    system("pause");
    return 0;
}