温馨提示×

c语言中如何输入多串字符串

小亿
343
2023-11-06 11:16:41
栏目: 编程语言

在C语言中,可以使用字符数组来存储多个字符串。可以使用循环来输入多个字符串,每次输入一个字符串后,将其存储到字符数组中。

下面是一个示例代码:

#include <stdio.h>

#define MAX_LENGTH 100  // 字符串的最大长度
#define MAX_STRINGS 10  // 最多输入的字符串个数

int main() {
    char strings[MAX_STRINGS][MAX_LENGTH];  // 定义一个二维字符数组,用于存储多个字符串
    int numStrings;  // 输入的字符串个数

    printf("请输入字符串的个数:");
    scanf("%d", &numStrings);

    // 清空缓冲区
    while (getchar() != '\n');

    printf("请输入 %d 个字符串:\n", numStrings);
    for (int i = 0; i < numStrings; i++) {
        printf("请输入第 %d 个字符串:", i + 1);
        fgets(strings[i], MAX_LENGTH, stdin);

        // 去掉末尾的换行符
        int len = strlen(strings[i]);
        if (strings[i][len - 1] == '\n') {
            strings[i][len - 1] = '\0';
        }
    }

    printf("输入的字符串为:\n");
    for (int i = 0; i < numStrings; i++) {
        printf("%s\n", strings[i]);
    }

    return 0;
}

以上代码中,通过定义一个二维字符数组strings来存储多个字符串。首先输入字符串的个数,然后使用fgets函数来逐个输入字符串,并通过循环输出输入的字符串。注意使用fgets函数可以避免输入中的空格被忽略。同时,使用strlen函数获取字符串的长度,并判断末尾是否为换行符,如果是则将其替换为字符串结束符\0。最后,通过循环输出输入的字符串。

请注意,在输入多个字符串时,需要按照指定的格式输入,每个字符串占一行。

0