在C语言中,scanf是一个常用的输入函数,用于从标准输入(通常是键盘)获取用户的输入值,并将其存储在变量中。
可以使用格式化字符串控制输入的格式,如%s表示输入字符串,%d表示输入整数,%f表示输入浮点数等等。
在C语言中,scanf函数是用于从标准输入流(stdin)读取格式化数据的函数。其语法如下:
int scanf(const char *format, ...);
其中,format参数是一个字符串,用于指定待输入的数据类型和格式,...是一个可变参数,用于接收输入的数据。下面是一些常见的格式说明符及其相应的数据类型:
格式说明符数据类型
%d int
%ld long
%lld long long
%f float
%lf double
%c char
%s 字符串
下面是scanf函数的用法示例:
#include <stdio.h>
int main()
{
int a;
float b;
char c;
char str[20];
printf("请输入一个整数、一个浮点数、一个字符和一个字符串:");
scanf("%d%f %c%s", &a, &b, &c, str);
printf("输入的整数是:%d ", a);
printf("输入的浮点数是:%f ", b);
printf("输入的字符是:%c ", c);
printf("输入的字符串是:%s ", str);
return 0;
}
扩展:
scanf函数会在输入的数据中留下换行符。可以使用getchar函数清空输入缓冲区。
scanf函数是不安全的,容易导致缓冲区溢出。可以使用fgets函数代替scanf函数。
scanf函数可以使用“*”作为格式说明符,表示跳过该项输入。例如,scanf("%*d%d", &a),表示跳过一个整数,然后读取下一个整数。