MST
星途 面试题库

面试题:C语言一维数组初始化的多种方式考察

请分别使用完全初始化、部分初始化以及动态初始化(通过用户输入确定数组元素值)的方式,在C语言中初始化一个一维整型数组,并编写完整代码展示其实现过程。同时,说明每种初始化方式的适用场景。
32.3万 热度难度
编程语言C

知识考点

AI 面试

面试题答案

一键面试

完全初始化

#include <stdio.h>

int main() {
    int arr1[5] = {1, 2, 3, 4, 5};
    for (int i = 0; i < 5; i++) {
        printf("%d ", arr1[i]);
    }
    printf("\n");
    return 0;
}

适用场景:当数组元素值在编写代码时就已明确确定,且数量和值都固定不变时适用。比如表示一周的天数、一年的月份数等固定的数据集合。

部分初始化

#include <stdio.h>

int main() {
    int arr2[5] = {1, 2};
    for (int i = 0; i < 5; i++) {
        printf("%d ", arr2[i]);
    }
    printf("\n");
    return 0;
}

适用场景:当数组大部分元素初始值为0,只有少数元素有特定值时适用。例如,记录学生成绩,大部分学生成绩未录入时可初始化为0,部分已录入成绩的学生可进行特定赋值。

动态初始化(通过用户输入确定数组元素值)

#include <stdio.h>

int main() {
    int n;
    printf("请输入数组元素个数: ");
    scanf("%d", &n);
    int arr3[n];
    for (int i = 0; i < n; i++) {
        printf("请输入第 %d 个元素: ", i + 1);
        scanf("%d", &arr3[i]);
    }
    for (int i = 0; i < n; i++) {
        printf("%d ", arr3[i]);
    }
    printf("\n");
    return 0;
}

适用场景:当数组元素值需要在程序运行时根据用户输入或其他动态条件来确定时适用。例如,用户录入自己的家庭成员年龄等情况。