在C語言中,可以使用scanf函數或者gets函數來輸入包含空格的字符串。
使用scanf函數輸入字符串時,可以使用"%[^\n]s"格式控制符,它表示輸入除了換行符以外的所有字符。示例代碼如下:
#include <stdio.h>
int main() {
char str[100];
printf("請輸入字符串:");
scanf("%[^\n]s", str);
printf("輸入的字符串是:%s\n", str);
return 0;
}
使用gets函數輸入字符串時,可以直接讀取一行完整的字符串,示例代碼如下:
#include <stdio.h>
int main() {
char str[100];
printf("請輸入字符串:");
gets(str);
printf("輸入的字符串是:%s\n", str);
return 0;
}
需要注意的是,gets函數存在安全性問題,不推薦使用。建議使用fgets函數代替,fgets函數可以指定最大讀取的字符數,避免數組溢出。示例代碼如下:
#include <stdio.h>
int main() {
char str[100];
printf("請輸入字符串:");
fgets(str, sizeof(str), stdin);
printf("輸入的字符串是:%s\n", str);
return 0;
}