库文件:<stdio.h>
基本组成:scanf(“%d”,&x);
其中双引号之间的内容只能是格式化控制符与字符,注,如果在双引号间加入什么字符,在输入数据中也要加入对应字符,例:scanf("%d sdf",&x); 那么就要输入12 sdf才行不然会报错。其中,格式化控制符也可以类似于printf,但在域宽和精度不同,在域宽,只能输入正整数表示提取的字符长度,scanf中浮点型是没有精度的,字符类型也是没有精度可言。
返回值:返回成功读入数据的个数
附加:可以用*获取数据输入,但忽略传入变量
输入数据的结束是看空格符、换行符、tab
scanf的一些特殊情况:
1:scanf("%2d%*2s%2d",&x,&y);
假设输入1 3456,则x为1,y为56(编译器会自动忽略空格并视之为结尾)
2:当用scanf输入数据时,上一个调用的scanf会把输入时的换行符输入缓冲区,则可能会导致当前scanf读入\n,有两种方法
1:“ %s”:%s前加空格
2:用getchar()吸收\n