数组是具有同一属性的若干个数据组织成一个整体,互相关联

数组是有序数据的集合。数组中的每一个元素都属于同一个数据类型,用一个统一的数组名和下标来唯一地确定数组中的元素

一维数组

一维数组的定义

在定义数组时需要指定这批变量的类型、数组名称和数组中包含多少个元素

定义一维数组:

类型符 数组名[常量表达式];

例:

int a[10];

在定义数组时,需要指定数组中元素的个数,方括号中的常量表达式用来表示元素的个数,即数组的长度。
例如a[10],表示a数组有10个元素
即a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]

常量表达式可以是常量和符号常量,不能是变量

引用一维数组的元素

#include <stdio.h>
int main()
{
int i,a[10]; //定义整型变量i和整型数组a,a中有10个元素
for(i=0;i<=9;i++) //对10个数组元素进行赋值
a[i] = i;
for(i=0;i<=9;i++)
printf("%d\n",a[i]);
return 0;
}

运行结果

遍历了一维数组a[10]中的元素

一维数组的初始化

1.在定义数组时对全部数组元素赋初值,例:

int a[5] = {1,2,3,4,5}

2.只给部分元素赋值,例:

int a[10] = {1,2,3,4}

定义a数组有10个元素,但大括号里只有4个元素,所以只对前面4个元素赋初值,后面的元素初值自动设为0

3.可以在定义数组时不指定数组长度,根据数据的数量来确定数组的长度

int a[] = {1,2,3,4,5}

二维数组

二维数组的定义

定义二维数组:

类型名 数组名[常量表达式][常量表达式];

第一个常量表达式为行数,第二个常量表达式为列数

例:

int a[5][6];

定义了一个名为a的数组,为5行6列

二维数组的初始化

1.分行给二维数组赋初值

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

给2行3列的二维数组a赋初值,第一行为1,2,3,第二行为4,5,6

2.统一赋初值

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

把这6个元素按顺序赋值给数组a

不指定特定的长度统一给元素赋初值

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

只指定了3列,一共有6个元素,所以系统会把行数确定为2

3.给部分元素赋初值

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

对指定的元素赋初值,其它的元素的值都默认为0

C语言-数组的更多相关文章

  1. GO语言数组和切片实例详解

    本文实例讲述了GO语言数组和切片的用法.分享给大家供大家参考.具体分析如下: 一.数组 与其他大多数语言类似,Go语言的数组也是一个元素类型相同的定长的序列. (1)数组的创建. 数组有3种创建方式: ...

  2. C语言 数组 列优先 实现

    C语言数组结构列优先顺序存储的实现 (GCC编译). 从行优先转换为列优先存储方式, 与行优先相比, 不同之处在于改变了数组维界基址的先后顺序, 从而改变了映像函数常量基址. /** * @brief ...

  3. C语言 数组 行优先 实现

    C语言数组结构行优先顺序存储的实现 (GCC编译). /** * @brief C语言 数组 行优先 实现 * @author wid * @date 2013-11-02 * * @note 若代码 ...

  4. 不可或缺 Windows Native (5) - C 语言: 数组

    [源码下载] 不可或缺 Windows Native (5) - C 语言: 数组 作者:webabcd 介绍不可或缺 Windows Native 之 C 语言 数组 示例cArray.h #ifn ...

  5. C语言数组

    在C语言中,对于三维或三维以上数组的使用并没有很好的支持,而且使用率也非常的低,后面会对三维数组做一些简单的分析,这篇文章主要以二维数组来探讨一些C语言中数组使用的相关概念和技巧. 1 一个var[i ...

  6. C语言数组:C语言数组定义、二维数组、动态数组、字符串数组

    1.C语言数组的概念 在<更加优美的C语言输出>一节中我们举了一个例子,是输出一个 4×4 的整数矩阵,代码如下: #include <stdio.h> #include &l ...

  7. Go语言数组的使用

    Go 语言数组 Go 语言提供了数组类型的数据结构. 数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,这种类型可以是任意的原始类型例如整形.字符串或者自定义类型. 相对于去声明number0 ...

  8. Go 语言数组

    Go 语言提供了数组类型的数据结构. 数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,这种类型可以是任意的原始类型例如整形.字符串或者自定义类型. 相对于去声明number0, number ...

  9. C语言 > 数组和指针

    C语言 数组和指针 const: 关于指针和const需要注意一些规则.首先,把const数据或非const数据的地址初始化为指向const的指针或为其赋值是合法的. 然而,只能把非const数据的地 ...

  10. Go语言数组和切片的原理

    目录 数组 创建 访问和赋值 切片 结构 初始化 访问 追加 拷贝 总结 数组和切片是 Go 语言中常见的数据结构,很多刚刚使用 Go 的开发者往往会混淆这两个概念,数组作为最常见的集合在编程语言中是 ...

随机推荐

  1. QMouseEvent 的坐标__Win

    1. QMouseEvent.x() 和 QMouseEvent.y() 是窗口里面的坐标,相当于 Windows API 里面的 ClientX和ClientY . 2. QMouseEvent.G ...

  2. 深入分析理解Tomcat体系结构

    Tomcat整体结构 由上图可知Tomcat的顶层容器是Server,而且一个Tomcat对应一个Server,一个server有多个service提供服务.service包含两个重要组件:Conne ...

  3. Spring Boot入门(二)

    一.Spring Boot项目打包 1.引入maven打包相关插件 2.项目右击run as>Maven clean.run as>Maven install在target文件夹下会生成相 ...

  4. $.ajax应用之请求头headers

    昨天项目中,由于要请求token验证,后台给出的方案是采用请求头返回token数据,给出的API文档是这样的 由于之前一直都是采用请求体发送请求,服务器在应答体李返回数据.和这个不一样: 采用jq的$ ...

  5. poj1523割顶-点双联通

    题意:求出所有的割顶,而且还有输出该割顶连接了几个点双连通分量 题解:直接tarjan求点双联通分量就好了,可以在加入边的时候记录加入次数,大于1的都是桥,输入输出很恶心,注意格式 #include& ...

  6. 删除rime输入法

    mac: 首先将输入法从偏好设置-键盘-输入源中去除,添加系统的输入法. 然后执行命令: $ killall Squirrel $ sudo rm -Rf "/Library/Input M ...

  7. 将一个jar包放到linux下定时执行

    将一个jar包放到linux下定时执行 1.在dbtodb文件夹下新建一个dbtodb.sh,脚本内容为: #!/bin/bash cd /usr/dbtodb/ java -jar dbtodb.j ...

  8. js操作获取和设置cookie

    //创建cookie function setCookie(name, value, expires, path, domain, secure) { var cookieText = encodeU ...

  9. MySQL 事物和数据库锁

    1.数据库事物 1. 什么是事务  事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消.也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一 ...

  10. winform常用方法

    1.对象的初始化器: Class a = new Class() { id = , name = "张三" } 2.窗体间传值    ①构造函数    ②单例函数 //单例模式:确 ...