面试题答案
一键面试完全初始化
#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;
}
适用场景:当数组元素值需要在程序运行时根据用户输入或其他动态条件来确定时适用。例如,用户录入自己的家庭成员年龄等情况。