就四辣么拽丶
2021-11-18 19:11
开发者_StackOverflow
输入第一个字符并以空格结束输入后,该字符与’\n’会一起进入标准流输入,’\n’便会作为第二个scanf语句的内容输入,从而让你的程序出现问题。 加空格便会屏蔽空白字符(上次内存中的‘\n'和其它转义字符):%c前没空格,scanf()将读取标准输入流中的第一个字符,%c前有空格,scanf()则读取标准输入流中第一个非空白字符。
吃瓜开发者_如何学JAVA群众在楼里 2021-11-18 19:15 应该是这个scanf读取了上一个输入的回车当成输入字符了。在这个scanf之前加上fflush(stdin),或者将scanf的"%c"改为" %c"(%前加个空格),执行就正确了。
吃瓜开发者_如何学JAVA群众在楼里 2021-11-18 19:15 应该是这个scanf读取了上一个输入的回车当成输入字符了。在这个scanf之前加上fflush(stdin),或者将scanf的"%c"改为" %c"(%前加个空格),执行就正确了。
精彩评论