C语言中的printf函数详解

发布时间:2024年01月06日

介绍

在C语言中,printf函数是一个非常重要的输出函数,用于在屏幕上显示各种数据类型的值。它通过占位符来指定输出的格式,并可以根据需要进行格式化输出。

常用的占位符列表

以下是printf函数中常用的占位符列表:

  • %a :浮点数(仅C99有效)
  • %A :浮点数(仅C99有效)
  • %c :char型数据
  • %d :十进制整数(int)
  • %e :使用科学计数法的浮点数,指数部分的 e 为小写
  • %E :使用科学计数法的浮点数,指数部分的 E 为大写
  • %i :整数,基本等同于 %d
  • %f :浮点数(float)
  • %g :6个有效数字的浮点数。整数部分一旦超过6位,就会自动转为科学计数法,指数部分的 e 为小写
  • %G :等同于 %g ,唯一的区别是指数部分的 E 为大写
  • %hd :十进制 short int 类型
  • %ho :八进制 short int 类型
  • %hx :十六进制 short int 类型
  • %hu :unsigned short int 类型
  • %ld :十进制整数(long)
  • %lo :八进制 long int 类型
  • %lx :十六进制 long int 类型
  • %lu :unsigned long int 类型
  • %lld :十进制 long long int 类型
  • %llo :八进制 long long int 类型
  • %llx :十六进制 long long int 类型
  • %llu :unsigned long long int 类型
  • %le :科学计数法表示的 long double 类型浮点数
  • %lf :十进制浮点数(double)
  • %n :已输出的字符串数量。该占位符本身不输出,只将值存储在指定变量之中
  • %o :八进制整数
  • %p :指针
  • %s :字符串
  • %u :十进制无符号整数(unsigned int)
  • %x :十六进制整数
  • %zd : size_t 类型
  • %% :输出一个百分号

代码示例

// Created by yjtzf on 2023/12/30.
#include <stdio.h>

int main() {
    printf("Hello, World\n"); // Hello, World

    printf("num is %d\n", 100); // num is 100

    printf("score = %d, level = %c\n", 90, 'A'); // score = 90, level = A

    // 常见的占位符
    printf("There are %d students\n", 5);   // There are 5 students

    char level = 'A';
    printf("this score level is: %c\n", level); // this score level is: A

    // 输出格式说明
    printf("num is %10d\n", 123);  // num is        123
    printf("num is %-10d\n", 123); // num is 123

    printf("num id %+d\n", +10); // num id +10
    printf("num id %+d\n", -10); // num id -10

    // 限定小数位
    printf("float is %.2f\n", 12.355678); // float is 12.36
    printf("float is %6.2f\n", 12.345);   // float is  12.35

    // 练习
    float f = 3.1415926535f;
    double d = 3.1415926535;

    // 使用 %f 输出单精度浮点数
    printf("Float: %f\n", f);  // Float: 3.141593
    // 使用 %lf 输出双精度浮点数
    printf("Double: %lf\n", d); // Double: 3.141593

    // 使用 %f 输出单精度浮点数
    printf("Float: %.8f\n", f);  // Float: 3.14159274
    // 使用 %lf 输出双精度浮点数
    printf("Double: %.8lf\n", d); // Double: 3.14159265

    return 0;
}

以上代码展示了printf函数的使用,包括常见占位符的输出以及格式说明。通过这些例子,你可以更好地理解如何使用printf函数来格式化输出不同类型的数据。

文章来源:https://blog.csdn.net/qq_29752857/article/details/135421334
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。