參考:https://blog.csdn.net/vincemar/article/details/78750435spa
由於:.net
scanf("%s",str); 遇到空格就中止接收後面的字符。blog
scanf("%s", str, 10); 不能接收帶空格的字符串輸入,雖然它的指定長度是10, 可是遇到空格時即便沒有滿10個字符它也自動結束輸入了。字符串
因此:get
char str[80];
gets(str); //能夠讀取空格, 回車纔會結束輸入編譯器
char str[10];io
scanf("%[^\n]",str); //能夠讀取空格,回車結束輸入編譯
附:正則中的[xxx],%[abc]表示字符組合包括a、b和c,若是遇到這三個字符以外的字符,則中止接收。%[^abc]表明字符組合爲abc之外的全部字符,至於橫槓是否用於指定某個範圍的字符%[a-z],則因編譯器而異。class
--------------------------------vi
2019-10-25 16:45:51 第一次改