答案 0 :(得分:3)
scanf在读取输入时跳过空白区域(空格,制表符,换行符等)。要读取格式不固定的输入,通常最好一次读一行。
请阅读“C编程语言”作者:Brian W. Kernighan和Dennis M. Ritchie了解更多信息。
答案 1 :(得分:0)
默认情况下,scanf将读取非空白字符的第一个设置。 考虑为歌曲名称或名称中可能有空格的任何内容阅读整行文本。
在某些情况下,您可能希望使用逗号或分号分隔字段,https://stackoverflow.com/a/40568616/5675174中给出的表达式将有助于此类情况
答案 2 :(得分:0)
如果要输入带空格的字符串,请尝试使用gets()函数时,scanf()函数在检测到新行或空格时停止读取。
语法:gets(变量名);
只有在输入新行时,获取功能才会停止获取输入。