1. C++中的printf和scanf函数详解
在C++编程中,输入输出操作是最基础也是最重要的部分之一。虽然C++提供了iostream库中的cin和cout进行输入输出,但在算法竞赛和实际开发中,C语言的printf和scanf函数因其高效性和格式化控制的灵活性而被广泛使用。这两个函数属于C标准库,在C++中通过
1.1 printf函数基础
printf函数的基本原型如下:
cpp复制int printf(const char* format, ...);
这个函数的作用是将格式化后的文本输出到标准输出设备(通常是屏幕)。函数名中的"f"代表"format",表示它可以对输出进行格式化控制。
最基本的printf使用示例:
cpp复制#include <cstdio>
int main() {
printf("Hello World!");
return 0;
}
需要注意的是,printf不会自动在输出末尾添加换行符。如果需要换行,必须显式添加"\n":
cpp复制printf("Hello World!\n");
1.2 printf的占位符系统
printf最强大的特性是其占位符系统,允许我们在字符串中插入变量值。占位符以百分号(%)开头,后跟一个表示数据类型的字符。
常用占位符包括:
- %d:十进制整数
- %f:浮点数
- %lf:双精度浮点数
- %c:单个字符
- %s:字符串
- %%:输出百分号本身
使用示例:
cpp复制int apples = 3;
printf("There are %d apples\n", apples);
double pi = 3.14159;
printf("Pi is approximately %lf\n", pi);
char initial = 'A';
printf("My initial is %c\n", initial);
1.3 printf的高级格式化控制
printf提供了丰富的格式化选项来控制输出的外观:
- 宽度控制:可以指定最小输出宽度
cpp复制printf("%5d\n", 123); // 输出 " 1
