C语言printf语句

在C语言中,printf()是一个用于输出文本信息到标准输出设备(例如控制台或终端)的函数。它可以用于在程序运行过程中打印各种类型的数据。

以下是printf()函数的基本用法示例:

#include <stdio.h>

int main() {
    int num1 = 10;
    float num2 = 3.14;
    char str[] = "Hello, world!";

    printf("整数:%d\n", num1);
    printf("浮点数:%f\n", num2);
    printf("字符串:%s\n", str);

    return 0;
}

上述代码中,我们包含了stdio.h头文件以访问printf()函数。在main()函数中,我们定义了一个整数变量num1、一个浮点数变量num2和一个字符数组str

然后,我们使用printf()函数来输出这些变量的值。在输出中,我们使用了一些格式化字符串来指定输出的格式。例如,%d用于输出整数,%f用于输出浮点数,%s用于输出字符串。

运行上述代码将在控制台输出如下内容:

整数:10
浮点数:3.140000
字符串:Hello, world!
 


printf()函数在C语言中有广泛的用途,以下列举了一些常见的用法:

格式化输出

printf()最常见的用途是格式化输出。你可以使用各种格式化字符串指令来指定输出的格式。下面是一些常见的格式化字符串指令:

格式化字符串指令描述
%d输出有符号十进制整数
%u输出无符号十进制整数
%f输出浮点数
%e输出科学计数法表示的浮点数
%s输出字符串
%c输出一个字符
%p输出指针地址
%x以十六进制输出无符号整数

 

以下是一个使用这些格式化字符串指令的示例:

#include <stdio.h>

int main() {
    int num = 100;
    float pi = 3.14159;
    char str[] = "Hello, world!";
    void *ptr = &num;

    printf("整数:%d\n", num);
    printf("浮点数:%f\n", pi);
    printf("字符串:%s\n", str);
    printf("指针地址:%p\n", ptr);
    printf("十六进制整数:%x\n", num);

    return 0;
}

上述代码输出:

整数:100
浮点数:3.141590
字符串:Hello, world!
指针地址:0x7ffeefbff3f8
十六进制整数:64

转义序列

printf()函数中,你还可以使用转义序列来输出一些特殊字符,例如换行符、制表符和退格符等。以下是一些常见的转义序列:

转义序列描述
\n输出一个换行符
\t输出一个制表符
\b输出一个退格符
\"输出双引号字符
\'输出单引号字符
\\输出反斜杠字符(\)

以下是一个使用转义序列的示例:

#include <stdio.h>

int main() {
    printf("这个文本会换\n行显示到控制台\n");
    printf("这个文本\t包含一个制表符\n");
    printf("这个文本\b包含退格符\n");
    printf("\"这个文本\"包含双引号\n");
    printf("\'这个文本\'包含单引号\n");
    printf("这个路径包含反斜杠:C:\\Users\n");

    return 0;
}

 

 

上述代码输出:

这个文本会换
行显示到控制台
这个文本    包含一个制表符
这个文本包含退格符
"这个文本"包含双引号
'这个文本'包含单引号
这个路径包含反斜杠:C:\Users

 

使用变量宽度和精度

printf()中,你可以使用“变量宽度”和“精度”来指定输出的格式。变量宽度指的是输出域的最小宽度,而精度指的是浮点数等数字类型的小数位数。

以下是一些常用的格式化字符串指令,它们具有变量宽度和/或精度:

格式化字符串指令描述
%3d输出宽度为3的整数,不足3位时左侧填充空格
%-3d输出宽度为3的整数,不足3位时右侧填充空格
%6.2f输出至少6位宽度且精度为2的浮点数,不足时右侧填充空格
%.2f输出精度为2的浮点数
%06d输出宽度为6的整数,不足6位时左侧填充0
%.*f输出任意宽度和精度的浮点数,宽度和精度由额外的参数指定。例如:printf("%.*f", 5, pi)

以下是一个使用变量宽度和精度的示例:

#include <stdio.h>

int main() {
    int num = 100;
    float pi = 3.14159;

    printf("宽度为6的整数:%6d\n", num);
    printf("宽度为6的整数(左对齐):%-6d\n", num);
    printf("宽度为6且精度为2的浮点数:%6.2f\n", pi);
    printf("宽度为6且精度为2的浮点数并用0填充:%06.2f\n", pi);

    int width = 8;
    int precision = 3;
    printf("自定义宽度和精度的浮点数:%.*f\n", precision, pi);
    printf("自定义宽度和精度的浮点数:%*.*f\n", width, precision, pi);

    return 0;
}

 

上述代码输出:

 

宽度为6的整数:   100
宽度为6的整数(左对齐):100   
宽度为6且精度为2的浮点数:  3.14
宽度为6且精度为2的浮点数并用0填充:003.14
自定义宽度和精度的浮点数:3.142
自定义宽度和精度的浮点数:   3.142

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

人工智能教学实践

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值