c语言怎么输入多行字符串数组中

在C语言中,可以使用以下方法输入多行字符串数组:

1、使用fgets()函数逐个读取每一行的字符串。

2、使用循环结构逐行读取字符串,并将其存储到字符数组中。

下面是一个示例代码,演示了如何输入多行字符串数组:

#include 
int main() {
    int numLines; // 用于记录要输入的行数
    printf("请输入要输入的行数:");
    scanf("%d", &numLines); // 读取要输入的行数
    char stringArray = (char)malloc(numLines * sizeof(char*)); // 动态分配内存来存储字符串数组
    for (int i = 0; i < numLines; i++) {
        stringArray[i] = (char*)malloc((100 + 1) * sizeof(char)); // 为每行字符串分配内存空间(假设最大长度为100)
    }
    // 逐个读取每一行的字符串并存储到字符数组中
    for (int i = 0; i < numLines; i++) {
        printf("请输入第%d行的字符串:", i + 1);
        fgets(stringArray[i], 100, stdin); // 使用fgets()函数读取一行字符串,并将其存储到字符数组中
        stringArray[i][strcspn(stringArray[i], "
")] = ''; // 去除换行符
    }
    // 打印输出字符串数组中的每个元素
    for (int i = 0; i < numLines; i++) {
        printf("第%d行的字符串是:%s
", i + 1, stringArray[i]);
        free(stringArray[i]); // 释放每行字符串所占用的内存空间
    }
    free(stringArray); // 释放整个字符串数组所占用的内存空间
    return 0;
}

上述代码首先通过scanf()函数获取用户要输入的行数,然后动态分配内存来存储字符串数组,接下来,使用循环结构逐个读取每一行的字符串,并使用fgets()函数将其存储到字符数组中,打印输出字符串数组中的每个元素,并释放所占用的内存空间。

分享题目:c语言怎么输入多行字符串数组中
当前链接:http://www.hantingmc.com/qtweb/news6/320406.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联