c语言中printf()函数的转换说明修饰符

1、

#include <stdio.h>

#define TEST 58  //符号常量or对象式宏

int main(void)
{
    printf("|%d|\n", TEST); 
    printf("|%5d|\n", TEST); //5表示宽度
    printf("|%-5d|\n", TEST);  //-表示左对齐
    printf("|%05d|\n", TEST);  //0表示用0填充
    printf("|%+5d|\n", TEST);  //+表示显示符号
    
    return 0;
}

 

2、

#include <stdio.h>

int main(void)
{
    double test = 39.342;
    
    printf("|%f|\n", test);
    printf("|%e|\n", test);  //科学计数法表示
    printf("|%.2f|\n", test);  // 保留两位小数
    printf("|%5.2f|\n", test);  // 指定宽度为5,保留两位小数
    printf("|%10.2f|\n", test);  // 指定宽度为10, 保留两位小数
    printf("|%010.2f|\n", test);  // 指定宽度为10,保留两位小数, 多余位数用0填充
    printf("|%+10.2f|\n", test);  // 指定宽度为10,保留两位小数,显示符号
    
    return 0;
}

 

3、

#include <stdio.h>

int main(void)
{
    int num = 100;
    
    printf("decimal: %d.\n\n", num);
    
    printf("octal: %o.\n", num);
    printf("octal: %#o.\n\n", num);  // 显式说明为8进制
    
    printf("hexadecimal: %x\n", num);
    printf("hexadecimal: %#x\n", num);  // 显式说明为16进制
        
    return 0;
}

 

4、

#include <stdio.h>

int main(void)
{
    int a = 34;
    int b = -34;
    
    printf("a: |%d|\n", a);
    printf("b: |%d|\n\n", b);
    
    printf("a: |% d|\n", a);
    printf("b: |% d|\n", b);
    
    return 0;
}

 

5、

#include <stdio.h>

int main(void)
{
    int a = 8;
    
    printf("a: |%5d|\n", a);
    printf("a: |%5.3d|\n", a);  //宽度为5,显示3位,位数不够用0填充
    printf("a: |%05d|\n", a);   //宽度为5,宽度不够则用0填充
    printf("a: |%05.3d|\n", a); //宽度为5,显示3位
    
    return 0;
}

 

6、

#include <stdio.h>


int main(void)
{
    char test[128] = "abcdefg";
    
    printf("test: |%s|\n", test);
    printf("test: |%10s|\n", test); //宽度为10
    printf("test: |%10.3s|\n", test); //宽度为10,显示3位
    printf("test: |%-10.3s|\n", test); // 宽度为10,显示3位,左对齐
    
    return 0;
}

 

posted @ 2021-08-07 20:56  小鲨鱼2018  阅读(337)  评论(0编辑  收藏  举报