C++~选这题~下面能正确定义数组,并能正确赋值的语句是?请说明各个选项的理由。
AintN=5,b[N][N]Binta[1][2]={{1},{3}}Cintc[2][]={{1,2},{3,4}}Dintd[3][2]={{1,2},{34}}...
A int N=5,b[N][N]
B int a[1][2]={{1},{3}}
C int c[2][]={{1,2},{3,4}}
D int d[3][2]={{1,2},{34}} 展开
B int a[1][2]={{1},{3}}
C int c[2][]={{1,2},{3,4}}
D int d[3][2]={{1,2},{34}} 展开
5个回答
推荐于2018-03-07
展开全部
A 错误,int b[N][N];N是变量,不是具体的数值。C++中声明数组时必需指明数组的大小,例如 int[5][5];B 错误,int a[1][2] 和 int a[2]是同一个意思,都表示的是同一个数组。而{{1},{3}}是二维数组的赋值,改为应 int a[2][1] ={{1},{3}}
C 错误 int a[2][];这里出错,C++中二维数组,第一个下标可以省略,但第二个绝不能省略,应该 改为 int a[][2]D 正确。最后 C++中 a[N][M](N,M都是具体的值,如果在声明时就直接赋值,N可以省略,M不能)N表示行数,M表示列数,即每行可以分配的内存大小
C 错误 int a[2][];这里出错,C++中二维数组,第一个下标可以省略,但第二个绝不能省略,应该 改为 int a[][2]D 正确。最后 C++中 a[N][M](N,M都是具体的值,如果在声明时就直接赋值,N可以省略,M不能)N表示行数,M表示列数,即每行可以分配的内存大小
展开全部
A错误,因为数组是在堆上分配空间大小必须在编译时知道,不可动态指定,如果N定义为常量或枚举,那就是正确的。
B错误,因为数组是一个1行2列的数组,一个{}表示一行
C错误,因为定义了一个2行的数组,但是列没有确定。改成 int c[][2]={{1,2},{3,4}}是可以的
D正确,定义了一个3行2列的数组,只初始化前2行数据,后面的用0初始化
B错误,因为数组是一个1行2列的数组,一个{}表示一行
C错误,因为定义了一个2行的数组,但是列没有确定。改成 int c[][2]={{1,2},{3,4}}是可以的
D正确,定义了一个3行2列的数组,只初始化前2行数据,后面的用0初始化
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-02
展开全部
选cA明显错。B和D都只能存一个元素,当时它明显存多了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
A是错的 答案是D
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-02
展开全部
A正确
B错误,因为int a[1][2]是 {{1, 3}}不是{{1}, {3}}
C正确,会自动确定为int c[2][2]
D错误,因为int d[3][2] 后面{{}, {}}只有2个,不是3个,缺少一组
B错误,因为int a[1][2]是 {{1, 3}}不是{{1}, {3}}
C正确,会自动确定为int c[2][2]
D错误,因为int d[3][2] 后面{{}, {}}只有2个,不是3个,缺少一组
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询