c语言输入一个多行字符数组当最后一行长度为零时,结束输入,并打印结果
时间: 2024-05-03 21:19:00 浏览: 61
可以使用fgets()函数逐行读取输入,当读取到最后一行长度为0时,停止读取并输出结果。具体实现如下:
```c
#include <stdio.h>
#define MAX_LINES 1000 // 最大行数
#define MAX_LENGTH 1000 // 每行最大长度
int main()
{
char input[MAX_LINES][MAX_LENGTH]; // 存储输入的字符数组
int line_count = 0; // 行数计数器
// 逐行读取输入
while (fgets(input[line_count], MAX_LENGTH, stdin) != NULL) {
// 如果读取到最后一行,长度为0则停止读取
if (input[line_count][0] == '\n' || input[line_count][0] == '\0') {
break;
}
line_count++; // 行数计数器自增
}
// 输出结果
for (int i = 0; i < line_count; i++) {
printf("%s", input[i]);
}
return 0;
}
```
注意,fgets()函数会读取换行符'\n'并将其存储到字符数组中,因此在输出结果时,不需要再手动添加换行符。
阅读全文