scanf( )函数和gets( )函数都可用于输入字符串,但在功能上有区别。若想从键盘上输入字符串hi hello,则应该使用__gets__函数。 gets可以接收空格;而scanf遇到空格、回车和Tab键都会认为输入结束,所有它不能接收空格。 char string[15]; gets(string); /*遇到回车认为输入结束*/ scanf(%s,string); /*遇到空格认为输入结束*/ 所以在输入的字符串中包含空格时,应该使用gets输入。 scanf和gets获取字符串时的区别 在C语言中,能构获取字符串的函数至少有两个: