阅读量:2
在C语言中,要一次性输入多行字符串,可以使用循环结构和数组来实现。
下面是一个示例代码,可以实现一次性输入多行字符串,并将其存储到一个二维数组中:
#include <stdio.h> #define MAX_LINES 100 #define MAX_LENGTH 100 int main() { char strings[MAX_LINES][MAX_LENGTH]; int i; printf("请输入多行字符串(以空行结束):\n"); // 使用循环逐行读取字符串 for (i = 0; i < MAX_LINES; i++) { if (fgets(strings[i], MAX_LENGTH, stdin) == NULL || strings[i][0] == '\n') { break; } } printf("输入的多行字符串为:\n"); // 使用循环逐行输出字符串 for (int j = 0; j < i; j++) { printf("%s", strings[j]); } return 0; }
在上面的代码中,我们首先定义了一个二维数组strings
,用于存储多行字符串。MAX_LINES
和MAX_LENGTH
分别表示最大行数和每行最大长度,可以根据实际需求进行调整。
接下来,使用fgets
函数逐行读取字符串,循环条件为字符串不为空或者遇到空行。如果超过最大行数或者遇到空行,则跳出循环。
最后,使用循环输出已输入的多行字符串,直到达到实际输入的行数。
请注意,上述代码仅提供了一种实现方式,你可以根据自己的需求进行修改和拓展。