若有说明 int a[][4]={{1, 2, 3}, {4, 5}{}};则a数组第一维的大小是?

作者&投稿:松申 (若有异议请与网页底部的电邮联系)
4.若有说明:int a[][4]={1,2,3,4,5,6,7,8,9,10};则a数组第一维的~

答案是B,3.
int a[][4]的写法就是表示,第一维大小没限制,但是第二维数组大小就是4,也就是int a[][4]={{1,2,3,4},{5,6,7,8},{9,10}},明显是3.

因为数组有10个数字,二维有三个数,10/3>3,所以计算机会自动将a数组变成a[4][3]
因此一维的大小为4,“4”指一维有四个元素,而每个元素有3个数字

若有说明:int a[][3]={1,2,3,4,5,6,7};则数组a第一维的大小是3。

int a[][]:第一个中括号表示有此二维数组有几行,第二个表示有几列。

故int a[][3]={1,2,3,4,5,6,7};说明此数组有n行,3列;也就是说每行有三个元素,所以第一行有1,2,3 这三个元素,第二行有4,5,6三个元素,第三行有7这个元素,不足的两个元素由0来补足。

对数组进行初始化,要么两个维度都不写,由赋值的数组确定,或者第二维可以不写,第一维要写,再由赋值数组确定。

数组中的下标是从 0 开始的(而不是 1)。那么,如何通过下标表示每个数组元素的呢?通过“数组名[下标]”的方式。例如“int a[5];”表示定义了有 5 个元素的数组 a,这 5 个元素分别为 a[0]、a[1]、a[2]、a[3]、a[4]。其中 a[0]、a[1]、a[2]、a[3]、a[4] 分别表示这 5 个元素的变量名。

如果从 1 开始,那么数组的第 5 个元素就是 a[5],而定义数组时是 int a[5],两个都是 a[5] 就容易产生混淆。而下标从 0 开始就不存在这个问题了!所以定义一个数组 a[n],那么这个数组中元素最大的下标是 n–1;而元素 a[i] 表示数组 a 中第 i+1 个元素。

另外,方括号中的常量表达式可以是“数字常量表达式”,也可以是“符号常量表达式”。但不管是什么表达式,必须是常量,绝对不能是变量。

C 语言不允许对数组的长度进行动态定义,换句话说,数组的大小不依赖程序运行过程中变量的值。非通常的情况为动态内存分配,此种情况下数组的长度就可以动态定义。

扩展资料:

数组特点

1、数组是相同数据类型的元素的集合。

2、数组中的各元素的存储是有先后顺序的,它们在内存中按照这个先后顺序连续存放在一起。

3、数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。例如,a[0]表示名字为a的数组中的第一个元素,a[1]代表数组a的第二个元素,以此类推。

参考资料来源:百度百科-数组



D
语法错误,编译结果就是语法错误

A 一共三行四列,没有赋值的都取默认值 0

D
语法错误
{4, 5}{}两个花括号之间应该用逗号隔开。

显然是c噻