1.scanf:接收用户输入的函数(格式化输入),
本质:首先scanf会到缓存中寻找有没有数据,如果没有数据就等待用户输入(阻塞),只到用户输入数据并按下回车,
一旦按下回车,scanf就会从缓存中取数据,
然后判断所取的字符是否与对应的占位符匹配,如果不匹配,就不会把值赋给变量地址,否则就赋值给变量地址,
最后将接收了的字符个数返回。
2.printf:输出内容到控制台(格式化输出):
本质:输出的的时候首先要将内容存入到缓存流中(输出流),只有遇到结束符号时,printf才会将内容输出,否则不会
输出,一般的结束符有 \n ,scanf函数,和程序的结束。
3.解决scanf换行产生的问题:(输入字符一般都会敲回车,进入下一步,而这个回车也是一个字符,也会被scanf接收)
方式一:用char类型的临时变量接收一个换行字符
方式二:用getchar函数,接收\n。
4. getchar函数:用于从缓存中取一个字符,如果缓存中没有数据,就阻塞等待用户输入,与scanf不同的是,该函数只获得一
个字符,并返回其ascll值