int a[3]={3*0};为什么不对

img


正确结果是A,第三行int a[3]={3*0};为什么不对?

这是给数组赋初值,花括号里面就没有乘法这一说,语法错误。C语言有三种方式给数组赋初值:
1、定义数组时给所有元素赋初值,例“int a[5]={1,2,3,4,5}”;
2、给一部分元素赋值,例“int a[5]={1,2}”;
3、定义时不指定数组长度,直接给所有元素赋初值,例“int a[]={1,2,3,4,5}”。

有帮助的话采纳一下哦!