C语言数组基础知识讲解

2020-12-16 10:13

C语言数组基础知识讲解

数组基础知识讲解

1. 数组简介

数组(Array)由一系列同种数据类型的元素组成。编译器可以从数组声明中知道数组中元素的数目,以及这些元素的数据类型。例如:

double dbl[20]; /* 包含 20 个 double 类型元素的数组 */

int c[12]; /* 包含 12 个int型元素的数组 */

char ch[40]; /* 包含 40 个 char 型元素的数组 */

方括号 [] 表明它们是数组,[] 里的数字表明数组包含的元素数目。

数组中的元素是相邻的,初始化之前,元素的值可能是随机的。下图形象地表现了这种相邻关系。

使用数组名和下标(subscript number 或 index)就可以访问特定的元素。下标始于 0,止于 n - 1。例如:c[0] 是数组 c 的第一个元素,而 c[11] 是它的最后一个元素,也就是第 12 个元素。

2. 初始化

int c[12] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 };

如上所示,我们使用大括号中一系列逗号分隔的值来初始化数组。我们把这个称之为初始化列表。大括号是必须的!逗号和值之间的空格可有可无。初始化后,数组 c 的第一个元素 c[0] 的值为 0,以此类推。

下面的小程序输出数组iarr中所有元素的值。

#include <stdio.h>

int main(void)

{

intiarr[4] = { 0, 1, 2, 3 };

int i = 2;

printf("%d ", iarr[0]); /* 输出 0 */

printf("%d ", iarr[1]); /* 输出 1 */

printf("%d ", iarr[i]); /* 输出 2 */

printf("%d ", iarr[1+2]); /* 输出 3 */

return 0;

}

如上所示,访问数组元素时,[] 里的可以是常量,可以是变量,也可以是表达式。[] 里还可以是返回值为整型的函数调用。总之,只要 [] 里的值是整数类型都可以。

注意,上面的程序,如果把intiarr[4] = { 0, 1, 2, 3 }; 改成intiarr[4];(即没有初始化),则它里面的元素的值是随机的,也就是本来就存在于那段内存空间的值。如果改成intiarr[4]; 后再把它放在int main(void) 之前,则它里面的元素的值都是 0。具体原因我在后续的教程会说明。

如果初始化列表中的值的个数少于数组元素个数,则余下的元素都会被初始化为 0。例如: intiarr[4] = { 0, 1 };

iarr[0] 和iarr[1] 分别为 0 和 1;iarr[2] 和iarr[3] 都被初始化为 0。注意,初始化列表中的值的个数可以少于数组元素个数,但是超过数组元素个数却是不对的!


C语言数组基础知识讲解.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:冀教版四年级英语下册Unit 3 Lesson 18 Maddy the Monster习题【

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: