c 语言当中用户输入一个字符,核心就是读取单个字符,常用两种写法,第一种是用 getchar 函数直接读取,第二种是用 scanf 搭配格式符 % c 读取,两种方式都可以拿到用户在键盘敲入的那一个字符,拿到之后还可以继续做判断,比如判断是不是数字是不是字母是不是符号,这个是 c 语言基础输入最基础的操作,很多初学者容易踩坑,就是回车换行符会被当成下一次输入的字符,导致后续读取异常,所以写代码的时候一定要理解输入缓冲区的原理,键盘输入不是直接送到程序内部,是先存进缓冲区,程序再从缓冲区取出数据,用户按下回车之后缓冲区才会提交,回车本身也是一个换行字符,会留在缓冲区里面,如果连续多次读取单个字符,这个换行符就会被下一次 getchar 或者 scanf % c 读到,造成不符合预期的结果。写代码的时候第一步先引入头文件,getchar 需要 stdio.h,scanf 同样依赖 stdio.h,第二步编写主函数 main,第三步定义字符变量,一般定义成 char 类型,第四步调用输入函数读取用户输入一个字符,第五步把读取到的字符输出,或者增加分支判断做业务处理,第六步编译运行测试,输入单个字符观察输出结果,确认缓冲区残留问题是否存在,最后根据需求选择合适的方案,简单单次读取直接用 getchar,如果后面还要继续读取其他类型数据,优先考虑 scanf % c 并且处理缓冲区残留。