在C语言中如何用scanf实现数组的动态分配

   2024-09-30 4570
核心提示:在C语言中,我们可以使用malloc和realloc函数来实现数组的动态分配。首先,需要包含stdlib.h头文件来使用这些函数。下面是一个示

在C语言中,我们可以使用malloc和realloc函数来实现数组的动态分配。首先,需要包含stdlib.h头文件来使用这些函数。下面是一个示例程序,演示了如何使用scanf和malloc实现数组的动态分配:

#include<stdio.h>#include <stdlib.h>int main() {    int n, i;    int *arr;    printf("请输入数组长度: ");    scanf("%d", &n);    // 使用 malloc 为数组分配内存    arr = (int *)malloc(n * sizeof(int));    if (arr == NULL) {        printf("内存分配失败!\n");        exit(0);    }    // 使用 scanf 读取数组元素    printf("请输入%d个整数:\n", n);    for (i = 0; i < n; i++) {        scanf("%d", &arr[i]);    }    // 打印数组元素    printf("输入的数组为:\n");    for (i = 0; i < n; i++) {        printf("%d ", arr[i]);    }    printf("\n");    // 释放内存    free(arr);    return 0;}

在这个示例中,我们首先使用scanf读取数组的长度n,然后使用malloc为数组分配内存。接下来,我们使用scanf读取数组的每个元素,并将其存储在分配的内存中。最后,我们打印数组的元素并释放内存。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式 | 网站留言    |  赣ICP备2021007278号