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

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

一维数组

一维数组的定义

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

定义一维数组:

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

例:

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. NLP-特征选择

    文本分类之特征选择 1 研究背景 对于高纬度的分类问题,我们在分类之前一般会进行特征降维,特征降维的技术一般会有特征提取和特征选择.而对于文本分类问题,我们一般使用特征选择方法. 特征提取:PCA.线 ...

  2. Codeforces Round #367 (Div. 2) D. Vasiliy's Multiset trie树

    D. Vasiliy's Multiset time limit per test 4 seconds memory limit per test 256 megabytes input standa ...

  3. Overlay网络与物理网络的关系

    编者按:无论是云计算还是SDN都把注意力集中在数据中心网络的建设上,各种解决方案层出不穷,其中以VMware为代表的软件厂商提出Overlay网络方案后,为数据中心网络的发展提出了新的思路.那么Ove ...

  4. ps常用键

    @updata 2016-7-31 切图 界面设置 视图 --显示 ---智能参考线       72 标尺  ctrl + r 窗口  ----信息 字符  历史记录 颜色 选RGB   信息图选项 ...

  5. npm、模块暴露,小知识点区别

    --save-dev与--save的区别 npm install xxx --save-dev 是指将包信息添加到 package.json 里的 devDependencies节点,表示开发时依赖的 ...

  6. 使用JMeter建立接口测试

    [需求]某组机器是Android和iOS输入法接口服务器,有很多重要的接口,例如:升级,网络开关,热词等.现在有3台机器过保要下线,新申请了3台机器,需要验证一下这3台机器接口的正确性. [测试步骤] ...

  7. LINUX CENTOS关机与重启命令详解

    Linux centos重启命令: 1.reboot 2.shutdown -r now 立刻重启(root用户使用) 3.shutdown -r 10 过10分钟自动重启(root用户使用) 4.s ...

  8. SMOTE RF MLP demo use cross_val_score to find best argument 处理不平衡数据的demo代码 先做smote处理 再用交叉验证找到最好的模型参数 实践表明MLP更好

    # _*_coding:UTF-8_*_ from sklearn.externals.six import StringIO from sklearn import tree import pydo ...

  9. Highcharts中更新series的5种方法

    用Highcharts画图时,经常需要更新所画的图表,最常见的就是改变数据以更新图表.在Highcarts中,数据对应的参数是series.这儿就以图1的柱状图为例,列举如何更新series的5种方法 ...

  10. Spring_总结_01_Spring概述

    一.前言 从今天开始,重新总结一下Spring的相关知识,主要是结合<Spring实战(第四版)>和 <JavaEE开发的颠覆者——SpringBoot实战>这两本书以及官方文 ...