二维数组的初始化可以按行分段赋值,也可按行连续赋值。

例如,对于数组 a[5][3],按行分段赋值应该写作:

int a[5][3]={{80,75,92},{61,65,71},{59,63,70},{85,87,90},{76,77,85}};

其中,花括号的对数代表行数,方括号中的值的个数代表列数。

按行连续赋值应该写作:

int a[5][3]={80,75,92,61,65,71,59,63,70,85,87,90,76,77,85};

这两种赋初值的结果是完全相同的。

在这种赋值方式中,编译器会按行和列的个数去自动识别数值所在的位置。如此数组定义3列,那么每相邻的三个值为一行,依此类推,直到行的个数达到所定义的列数为止。

形象地表示地话,这个数组是这样的:

80  75  92

61  65  71

59  63  70

85  87  90

76  77  85

(此表示方式是为了更易于理解编译器是如何识别行和列)

除此之外

1)在对二维数组定义时,行的值可忽略,但列的值不能忽略,如

int a[][3]={{0,0,0},{1,1,1}};

这种方式正确。

2)可以只对部分元素赋值,未赋值的元素自动取“零”值。如

int a[3][3]={{1},{2},{3}};

是对每一行的第一列元素赋值,未赋值的元素的值为 0。

形象地表示地话,这个数组是这样的:

1  0  0
2  0  0
3  0  0

3)二维数组可以看作是由一维数组嵌套而成的;如果一个数组的每个元素又是一个数组,那么它就是二维数组。当然,前提是各个元素的类型必须相同。根据这样的分析,一个二维数组也可以分解为多个一维数组,C语言允许这种分解。

例如,二维数组a[3][4]可分解为三个一维数组,它们的数组名分别为 a[0]、a[1]、a[2]。

这三个一维数组可以直接拿来使用。这三个一维数组都有 4 个元素,比如,一维数组 a[0] 的元素为 a[0][0]、a[0][1]、a[0][2]、a[0][3]。

C语言二维数组的初始化相关推荐

  1. C语言二维数组的初始化方法

    C语言二维数组的初始化方法 01 完全赋值式一 int x[3][4]={{1,2,3,4}{5,6,7,8},{9,10,11,12}}; 02 完全赋值式二 int x[3][4]={1,2,3, ...

  2. c语言如何初始化程序,c语言二维数组如何初始化为0 - 全文

    c语言二维数组如何初始化 1 有两种方法 (1)在定义时可以直接赋值来初始化 (2)在定义后可以为其元素一个个来赋值 2 示例 123456789101112131415161718192021222 ...

  3. C语言 | 二维数组

    C语言二维数组的定义 一般形式 类型说明符 数组名[常量表达式][常量表达式]int a[10][6],b[3][4]; 用矩阵形式表示二维数组,是逻辑上的概念,能形象地表示出行列关系,而在内存中,各 ...

  4. c语言字符串二维数组初始化为0,c语言二维数组如何初始化为0

    c语言二维数组如何初始化 1 有两种方法 (1)在定义时可以直接赋值来初始化 (2)在定义后可以为其元素一个个来赋值 2 示例 123456789101112131415161718192021222 ...

  5. c语言二维数组初始化_6.2 C语言二维数组

    01二维数组的定义 1.一般形式 类型说明符 数组名[常量表达式][常量表达式] 2.例子 int a[10][6],b[3][4]; 3.用矩阵形式表示二维数组,是逻辑上的概念,能形象地表示出行列关 ...

  6. C语言二维数组的定义、初始化、赋值

    二维数组的定义 二维数组定义的一般形式是: dataType arrayName[length1][length2]; 其中,dataType 为数据类型,arrayName 为数组名,length1 ...

  7. C语言 二维数组的定义、初始化以及数组元素的引用

    二维数组定义的一般形式为: 类型说明符 数组名[常量表达式 ][常量表达式] 例如:float a[3][4],b[5][10]; 是定义a为3行4列的数组,b为5行10列的数组. 注意不可以写成fl ...

  8. qt 二维数组初始化_C语言二维数组的定义、初始化、赋值

    上节讲解的数组可以看作是一行连续的数据,只有一个下标,称为一维数组.在实际问题中有很多数据是二维的或多维的,因此C语言允许构造多维数组.多维数组元素有多个下标,以确定它在数组中的位置.本节只介绍 二维 ...

  9. python定义二维数组_二维数组的定义、初始化和输出,C语言二维数组详解

    本节学习二维数组.二维数组与一维数组相似,但是用法上要比一维数组复杂一点.后面的编程中,二维数组用得很少,因为二维数组的本质就是一维数组,只不过形式上是二维的.能用二维数组解决的问题用一维数组也能解决 ...

最新文章

  1. 摩天轮社区_看房日记:难得!宜宾,又来一楼盘!一线江景+公园+学校,还有小户型、摩天轮...
  2. 【风控术语】数字金融欺诈行为名词表
  3. 山西农信社计算机知识,山西人事考试网 山西农信社考试计算机知识高频考点(二)...
  4. Spring 配置元数据
  5. python变量标识符_简谈-Python的注释、变量类型、标识符及关键字
  6. 力扣第202题. 快乐数(JavaScript)
  7. json-lib javabean转换为首字母大写的json串
  8. 优秀的程序员是这样的
  9. Opera 首个 “重生” 版本亮相:启用全新用户界面
  10. 三个条件的if函数c语言,if函数如何设置多个条件
  11. 大鱼吃小鱼小游戏完整版
  12. Et aliquam sunt quasi harum unde.Deserunt impediSofort wohnen früh aus t quidem vel dolorum ducimus.
  13. 婚礼筹备之WBS工作分解结构(转)
  14. android盒子共享,Android使用SMB协议共享电脑内文件方法
  15. (实测可用)STM32CubeMX教程-STM32L431RCT6开发板研究串口通信(DMA)
  16. 【生活】如何线上办理持有广州社保人员的异地分娩医保登记 - 定点医院 - 异地就医报销相关
  17. OpenGL编程入门学习
  18. lisp的vla函数画矩形_AutoLISP反应器vlr-object-reactor函数应用
  19. 亿嘉和机器人上市了吗_年科研投入近10% 亿嘉和誓做“世界一流机器人公司”...
  20. 如何为博客做seo?

热门文章

  1. 条形图函数pyplot.bar()/pyplot.barh()
  2. 来自程序媛的大数据分享(文中有彩蛋)
  3. 劫匪深夜打劫女汉子 被高跟鞋猛踹肚子
  4. java中文档注释作用_java中文档注释
  5. Android 获取应用文件的路径即 /data/data/youPackageName/files
  6. 盛大的2005:开局很精彩,结尾很无奈
  7. 临摹中国慕课静态网页第二周周记(CSS3+JS)
  8. 【Educoder作业】※ 字符信息——凯撒加密
  9. 我如何选择我的程序编辑器
  10. 程序员接外包?老司机的经验之谈,务必收藏好哦