在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
函數逐行讀取字符串,循環條件為字符串不為空或者遇到空行。如果超過最大行數或者遇到空行,則跳出循環。
最后,使用循環輸出已輸入的多行字符串,直到達到實際輸入的行數。
請注意,上述代碼僅提供了一種實現方式,你可以根據自己的需求進行修改和拓展。