scanf与printf用法详解
`scanf` 和 `printf` 是 C 语言中用于输入和输出的两个重要函数,它们都定义在 `stdio.h` 头文件中。下面分别介绍它们的用法:
scanf 用法
`scanf` 函数用于从标准输入(通常是键盘)读取数据,并根据指定的格式将读取的数据存储到变量中。
# 基本格式
```cscanf(格式控制字符串, 输入参数列表);```
格式控制字符串 :包含格式说明符和普通字符。格式说明符以 `%` 开头,后面跟一个或多个格式说明符字符,用于指定输入数据的类型。
输入参数列表 :是一系列变量的地址,用于存储读取的数据。
# 格式说明符
`%d`:读取整数。
`%f`:读取浮点数。
`%c`:读取单个字符。
`%s`:读取字符串,直到遇到空白字符(空格、制表符或换行符)。
`%lf`:读取双精度浮点数。
`%le`:读取科学记数法表示的双精度浮点数。
# 注意事项
在格式控制字符串中,除了格式说明符以外的其他字符,在输入数据时,需要在对应的位置上输入这些字符相同的字符。
当使用 `%c` 格式说明符读取字符时,空格和转义字符中的字符都被视为有效字符。
在读取数值数据时,如果输入空格、回车、Tab键或遇到非法字符,输入被认为结束。
printf 用法
`printf` 函数用于向标准输出(通常是屏幕)打印格式化的数据。
# 基本格式
```cprintf(格式控制字符串, 输出参数列表);```
格式控制字符串 :包含格式说明符和普通字符。格式说明符用于指定数据的输出格式。
输出参数列表 :是一系列要输出的表达式,可以是变量、常量或其他数据类型。
# 格式说明符
`%d`:输出整数。
`%f`:输出浮点数。
`%c`:输出单个字符。
`%s`:输出字符串。
`%lf`:输出双精度浮点数。
`%le`:输出科学记数法表示的双精度浮点数。
# 注意事项
占位符 `%` 后面的字符表示输出数据的类型。
输出文本中可以使用多个占位符,占位符的数量与输出参数的数量一致。
`printf` 函数不会在行尾自动添加换行符,如果需要在输出结束后换行,可以使用 `\\n` 转义字符。
# 示例
```c#include int main() { int num; printf(\"请输入一个整数:\"); scanf(\"%d\", &num); printf(\"你输入的整数是:%d\\n\", num); return 0;}```
以上是 `scanf` 和 `printf` 的基本用法。使用这两个函数时,请确保格式控制字符串与输入/输出参数的类型相匹配,以避免运行时错误
其他小伙伴的相似问题:
如何处理scanf输入中的非法字符?
printf输出中如何避免行尾自动换行?
如何在scanf和printf中确保数据类型匹配?