C语言数组输入如何在输入空格时推出循环
时间: 2024-09-21 08:13:23 浏览: 68
在C语言中,当处理数组输入并希望在遇到空格时停止接收用户输入时,可以使用`fgets()`函数结合字符判断来实现。`fgets()`函数可以读取一行字符串到指定的内存区域,并包括换行符`\n`。
下面是一个简单的例子,展示了如何使用`fgets()`配合条件判断来实现这个功能:
```c
#include <stdio.h>
#define MAX_INPUT_LENGTH 100
int main() {
char array[MAX_INPUT_LENGTH];
int i = 0;
printf("请输入一些字符(空格分隔): ");
while (fgets(array + i, sizeof(array) - i, stdin)) { // 使用 fgets 读取输入
if (array[i] == ' ') { // 当遇到空格
array[i] = '\0'; // 将空格替换成结束符'\0'
break; // 结束循环
} else {
i++; // 如果不是空格,则继续读取
}
}
array[i] = '\0'; // 确保最后一个字符也是结束符
printf("您输入的是: %s\n", array);
return 0;
}
```
在这个示例中,程序会持续读取用户的输入,直到遇到空格为止。一旦找到空格,它会立即停止输入并将当前位置设置为结束符`\0`,然后跳出循环。注意,这种方法不会去除用户输入的前导空格,如果需要去除,可以在最后添加额外的检查或清理步骤。
阅读全文