C语言中输入两个字符串中间用空格隔开
时间: 2024-12-19 22:25:23 浏览: 9
在C语言中,你可以使用标准库函数`scanf()`来从用户那里获取输入,然后通过处理换行符和空格来分开两个字符串。这里是一个简单的示例:
```c
#include <stdio.h>
#include <string.h> // 引入字符串处理函数
int main() {
char str1[50], str2[50]; // 假设我们有两个50字符长度的数组用于存储字符串
char input[100]; // 临时数组用于存储用户输入
printf("请输入两个字符串,中间用空格隔开:");
fgets(input, sizeof(input), stdin); // 使用fgets读取用户的输入,包括空格
size_t len = strlen(input);
if (len > 0 && input[len - 1] == '\n') { // 检查是否包含换行符
input[len - 1] = '\0'; // 如果有,去掉换行符
}
char *token = strtok(input, " "); // 使用strtok分割字符串," "作为分隔符
while (token != NULL) {
if (strcmp(token, "") != 0) { // 检查是否为空串
strcpy(str1, token); // 将非空的token复制到第一个字符串
strcat(str1, " "); // 添加空格
token = strtok(NULL, " "); // 继续分割直到找到下一个非空词
} else {
strcpy(str2, token); // 当前词为空,直接将空格后的部分赋给第二个字符串
break;
}
}
printf("第一个字符串: %s\n", str1);
printf("第二个字符串: %s\n", str2);
return 0;
}
```
阅读全文