C语言-数组
数组是具有同一属性的若干个数据组织成一个整体,互相关联
数组是有序数据的集合。数组中的每一个元素都属于同一个数据类型,用一个统一的数组名和下标来唯一地确定数组中的元素
一维数组
一维数组的定义
在定义数组时需要指定这批变量的类型、数组名称和数组中包含多少个元素
定义一维数组:
类型符 数组名[常量表达式];
例:
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语言-数组的更多相关文章
- GO语言数组和切片实例详解
本文实例讲述了GO语言数组和切片的用法.分享给大家供大家参考.具体分析如下: 一.数组 与其他大多数语言类似,Go语言的数组也是一个元素类型相同的定长的序列. (1)数组的创建. 数组有3种创建方式: ...
- C语言 数组 列优先 实现
C语言数组结构列优先顺序存储的实现 (GCC编译). 从行优先转换为列优先存储方式, 与行优先相比, 不同之处在于改变了数组维界基址的先后顺序, 从而改变了映像函数常量基址. /** * @brief ...
- C语言 数组 行优先 实现
C语言数组结构行优先顺序存储的实现 (GCC编译). /** * @brief C语言 数组 行优先 实现 * @author wid * @date 2013-11-02 * * @note 若代码 ...
- 不可或缺 Windows Native (5) - C 语言: 数组
[源码下载] 不可或缺 Windows Native (5) - C 语言: 数组 作者:webabcd 介绍不可或缺 Windows Native 之 C 语言 数组 示例cArray.h #ifn ...
- C语言数组
在C语言中,对于三维或三维以上数组的使用并没有很好的支持,而且使用率也非常的低,后面会对三维数组做一些简单的分析,这篇文章主要以二维数组来探讨一些C语言中数组使用的相关概念和技巧. 1 一个var[i ...
- C语言数组:C语言数组定义、二维数组、动态数组、字符串数组
1.C语言数组的概念 在<更加优美的C语言输出>一节中我们举了一个例子,是输出一个 4×4 的整数矩阵,代码如下: #include <stdio.h> #include &l ...
- Go语言数组的使用
Go 语言数组 Go 语言提供了数组类型的数据结构. 数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,这种类型可以是任意的原始类型例如整形.字符串或者自定义类型. 相对于去声明number0 ...
- Go 语言数组
Go 语言提供了数组类型的数据结构. 数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,这种类型可以是任意的原始类型例如整形.字符串或者自定义类型. 相对于去声明number0, number ...
- C语言 > 数组和指针
C语言 数组和指针 const: 关于指针和const需要注意一些规则.首先,把const数据或非const数据的地址初始化为指向const的指针或为其赋值是合法的. 然而,只能把非const数据的地 ...
- Go语言数组和切片的原理
目录 数组 创建 访问和赋值 切片 结构 初始化 访问 追加 拷贝 总结 数组和切片是 Go 语言中常见的数据结构,很多刚刚使用 Go 的开发者往往会混淆这两个概念,数组作为最常见的集合在编程语言中是 ...
随机推荐
- QMouseEvent 的坐标__Win
1. QMouseEvent.x() 和 QMouseEvent.y() 是窗口里面的坐标,相当于 Windows API 里面的 ClientX和ClientY . 2. QMouseEvent.G ...
- 深入分析理解Tomcat体系结构
Tomcat整体结构 由上图可知Tomcat的顶层容器是Server,而且一个Tomcat对应一个Server,一个server有多个service提供服务.service包含两个重要组件:Conne ...
- Spring Boot入门(二)
一.Spring Boot项目打包 1.引入maven打包相关插件 2.项目右击run as>Maven clean.run as>Maven install在target文件夹下会生成相 ...
- $.ajax应用之请求头headers
昨天项目中,由于要请求token验证,后台给出的方案是采用请求头返回token数据,给出的API文档是这样的 由于之前一直都是采用请求体发送请求,服务器在应答体李返回数据.和这个不一样: 采用jq的$ ...
- poj1523割顶-点双联通
题意:求出所有的割顶,而且还有输出该割顶连接了几个点双连通分量 题解:直接tarjan求点双联通分量就好了,可以在加入边的时候记录加入次数,大于1的都是桥,输入输出很恶心,注意格式 #include& ...
- 删除rime输入法
mac: 首先将输入法从偏好设置-键盘-输入源中去除,添加系统的输入法. 然后执行命令: $ killall Squirrel $ sudo rm -Rf "/Library/Input M ...
- 将一个jar包放到linux下定时执行
将一个jar包放到linux下定时执行 1.在dbtodb文件夹下新建一个dbtodb.sh,脚本内容为: #!/bin/bash cd /usr/dbtodb/ java -jar dbtodb.j ...
- js操作获取和设置cookie
//创建cookie function setCookie(name, value, expires, path, domain, secure) { var cookieText = encodeU ...
- MySQL 事物和数据库锁
1.数据库事物 1. 什么是事务 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消.也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一 ...
- winform常用方法
1.对象的初始化器: Class a = new Class() { id = , name = "张三" } 2.窗体间传值 ①构造函数 ②单例函数 //单例模式:确 ...