一维数组的定义与初始化 — 计算机填空题
题目
阅读下列 C 语言代码片段:
int k = 3;
int b[k];
int c[] = {2, 5, 8};
int d[5] = {1, 2};
下列关于上述一维数组定义与初始化的判断中,正确的是____(填写序号:①/②/③/④/⑤,若有多项正确则按从小到大顺序连写,如①④)。
① 语句 int b[k]; 合法,因为 k 是已初始化的整型变量,属于 C99 变长数组;
② 数组 c 的长度为 3,其元素依次为 c[0]=2、c[1]=5、c[2]=8;
③ 数组 d 的长度为 5,只有 d[0]、d[1] 被显式初始化,其余元素的值均为 0;
④ 语句 int c[];合法,编译器会自动确定数组长度为 0;
⑤ 数组 d 中 d[2] 未显式赋值,其值是不确定的随机值,不能保证为 0。