C语言scanf("%4c")输入单个字符

img


怎么输入才对呢,我试着每个字母后面跟空格或者回车都不能正确获取到值

你用的是lightly在编程吗
试试这样
12345678CBA

scanf("%4c", &c1) 表示从标准输入中读取一个长度不超过4的字符数组,%4c 是格式控制符,表示读取一个长度为4的字符数组。如果输入的字符数不足4个,则会在输入结束符(例如空格、换行等)处停止读取。
你完整的题目是什么

ABC三个字符之间各自随便插入3个字符就行了。%4c表示会读取第一个字符,然后跳过3个字符继续后面的输入,
不如:
AKKKBMMPCDDC

  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/7768618
  • 你也可以参考下这篇文章:C语言scanf()常见报错问题
  • 除此之外, 这篇博客: c语言使用scanf()函数跳过输入字符型%c的问题中的 (1)scanf()函数输入字符时的执行原理 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 1、用户输入的字符,会以ASCII码的形式存储在键盘缓冲区;
    2、scanf()函数每执行一次,就从键盘缓冲区读出一个ASCII值;
    3、调用scanf()函数时,用户最后输入的回车键也会以换行符’\n’的ASCII码储存在键盘缓冲区;