在C语言中,输入字符串并显示的方法主要有以下几种:
使用 `scanf()` 函数
`scanf()` 函数使用 `%s` 格式说明符来读取字符串,直到遇到空格、制表符或换行符为止。
示例代码:
```c
include int main() { char str; printf("请输入一个字符串: "); scanf("%s", str); printf("输入的字符串是: %s\n", str); return 0; } ``` `fgets()` 函数可以读取包含空格、制表符和换行符的字符串,并且可以限制输入的长度,避免缓冲区溢出。 示例代码: ```c include int main() { char str; printf("请输入一个字符串: "); fgets(str, sizeof(str), stdin); // 去掉fgets读取的换行符 str[strcspn(str, "\n")] = '\0'; printf("输入的字符串是: %s\n", str); return 0; } ``` 使用 `gets()` 函数(不推荐使用): `gets()` 函数可以读取整行输入,包括空格,但由于其缓冲区大小固定且不检查溢出,容易导致安全问题,因此在C11标准中已被废弃。 示例代码: ```c include int main() { char str; printf("请输入一个字符串: "); gets(str); printf("输入的字符串是: %s\n", str); return 0; } ``` 建议 在实际编程中,推荐使用 `fgets()` 函数来输入字符串,因为它可以更好地处理包含空格的字符串,并且避免了缓冲区溢出的风险。 如果需要处理非常长的字符串,可以考虑使用动态内存分配(如 `malloc()`)来分配足够的内存来存储输入的字符串。使用 `fgets()` 函数