一、函数格式不同
scanf函数是格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量中。
getchar函数是键盘输入函数,其功能是从键盘上输入一个字符。
二、读取方式不同
scanf函数在读取数字时会跳过空格、制表符和换行符。
getchar函数只能输入字符型,输入时遇到回车键才从缓冲区依次提取字符。
三、结束输入的方式不同
scanf函数以空格、Enter、Tab结束一次输入,不接受空格符。
getchar函数以Enter结束输入(空格不结束),接受空格符。
四、舍弃回车符的方法不同
scanf函数以Space、Enter、Tab结束一次输入,不会舍弃最后的回车符(即回车符会残留在缓冲区中)。
getchar函数以Enter结束输入时,接受空格,会舍弃最后的回车符。