使用 `printf()` 和 `scanf()` 函数进行格式化输入和输出232


在 C 编程中,`printf()` 和 `scanf()` 函数可用于格式化输入和输出。这些函数允许您使用格式化字符串指定数据的输入和输出格式。

`printf()` 函数

`printf()` 函数用于向标准输出(通常是控制台)输出数据。其语法如下:```c
int printf(const char *format, ...);
```

`format` 参数是一个格式化字符串,它指定输出数据的格式。紧跟格式化字符串的是要输出的变量或值,这些值作为可变参数传递。

格式化字符串中使用的格式说明符如下:| 格式说明符 | 输出类型 |
|---|---|
| `%d` | 十进制整型 |
| `%i` | 有符号十进制整型 |
| `%u` | 无符号十进制整型 |
| `%o` | 八进制整型 |
| `%x` | 十六进制整型(小写) |
| `%X` | 十六进制整型(大写) |
| `%f` | 浮点数 |
| `%e` | 科学计数法浮点数 |
| `%g` | 根据大小选择 %f 或 %e |
| `%c` | 字符 |
| `%s` | 字符串 |

例如,以下代码使用 `printf()` 函数输出一个整型和一个浮点型:```c
printf("整型值:%d浮点值:%f", 10, 3.14);
```
输出结果为:
```
整型值:10
浮点值:3.140000
```

`scanf()` 函数

`scanf()` 函数用于从标准输入(通常是键盘)获取数据。其语法如下:```c
int scanf(const char *format, ...);
```

与 `printf()` 函数类似,`format` 参数是一个格式化字符串,它指定输入数据的格式。紧跟格式化字符串的是变量的地址,这些变量将存储从输入获取的数据。

用于 `scanf()` 函数的格式说明符与 `printf()` 函数的格式说明符相同。

例如,以下代码使用 `scanf()` 函数获取两个值:一个整型和一个浮点型:```c
int num;
float price;
scanf("%d %f", &num, &price);
```

格式说明符修饰符

除了格式说明符之外,C 还提供了格式说明符修饰符,用于指定额外的输出或输入选项。这些修饰符可以添加到格式说明符的前面,如下所示:| 修饰符 | 描述 |
|---|---|
| `-` | 左对齐 |
| `+` | 在正数前添加正号 |
| ` ` | 在正数前添加空格 |
| `0` | 使用零填充 |
| `#` | 使用前缀(如 0x 或 0b) |

例如,以下代码使用 `-` 修饰符左对齐一个整型输出:```c
printf("%-10d", 123);
```
输出结果为:
```
123
```

`printf()` 和 `scanf()` 函数是 C 编程中用于格式化输入和输出的强大工具。它们使您可以指定输入和输出数据的格式,从而可以灵活地控制程序的输入和输出行为。

2025-02-16


上一篇:C语言函数指南:全面详解

下一篇:用 C 语言高效计算 x 的 n 次方