c语言数组多个字符串的输入输出
时间: 2024-12-06 07:21:28 浏览: 45
在C语言中,如果你需要处理多个字符串并进行输入输出操作,可以使用字符数组或动态分配内存的指针数组。这里是一个简单的示例:
1. **输入**:
- 使用`fgets()`函数从标准输入流中读取一行作为字符串,然后多次循环读取直到用户停止输入。例如:
```c
#include <stdio.h>
#define MAX_STR 50 // 假设最大字符串长度
int main() {
char strings[10][MAX_STR]; // 存储10个字符串的空间
int i = 0;
printf("请输入多个字符串(输入空行结束):\n");
while ( fgets(strings[i], MAX_STR, stdin) && strings[i][0] != '\n' ) { // 只读非换行符
strings[i][strlen(strings[i])] = '\0'; // 结束字符串,防止'\n'影响后续处理
i++;
}
if (i > 0) {
i--; // 因为fgets会读入换行符,所以实际存储的字符串数减一
}
}
```
2. **输出**:
- 可以遍历数组,逐个打印每个字符串:
```c
for (int j = 0; j < i; j++) {
printf("第 %d 个字符串: %s\n", j+1, strings[j]);
}
```
**相关问题--:**
1. C语言如何动态分配数组用于存储字符串?
2. 如何检查用户是否已停止输入字符串?
3. 如何处理用户输入过长导致数组溢出的情况?
阅读全文