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 的开发者往往会混淆这两个概念,数组作为最常见的集合在编程语言中是 ... 
随机推荐
- 利用CXF框架开发webservice
			开发服务端代码 1. web.xml文件中添加cxf的servlet 2. 定义接口 @WebService(targetNamespace="http://UserInfo.ws.com& ... 
- 如何用wamp配置多域名虚拟目录
			一.前言 自从重装了最新版wamp64后就不可用了,下面来介绍我的解决方法,两者均可尝试,差别并不大! 二.配置虚拟主机 1.首先打开apache的配置文件httpd.conf (路径\wamp64\ ... 
- Maven——安装配置
			MAVEN 一.介绍:(待填) 二.下载:http://maven.apache.org/download.cgi(官网下载) 选择二进制的zip文件,这种的可直接使用. 三.环境配置 1.前提条件: ... 
- rpm卸载软件error preun
			这两天,使用ipvsadm -ln总是显示空. 后来,使用strace ipvsadm -ln定位 看来,是ipvsadm模块有问题,卸载了再重新安装吧,结果出现这种问题. 从来没遇到这种问题: er ... 
- UvaLive 5811 概率DP
			题意 : 有54张牌 问抽多少张牌能使每种花色都至少是给定的数字 两张王牌可以被选择为任何花色 高放学长真是太腻害辣! 设置dp[][][][][x][y] 前四维代表四种真的花色的数量 后两维xy代 ... 
- 关于synchronized关键字
			1.synchronized关键字的作用域有二种: 1)是某个对象实例内,synchronized aMethod(){}可以防止多个线程同时访问这个对象的synchronized方法(如果一个对象有 ... 
- windows下pip安装包权限的问题
			md哔了狗了,把scipy弄崩了,还顺带把numpy弄崩了... 然后安装包一直权限不允许: 于是按照下面这篇博客以管理员运行cmd,结果还是没卵用 http://www.cnblogs.com/li ... 
- Composer安装php插件包中有哪些坑
			Composer安装php插件包中有哪些坑 一.总结 一句话总结:不要盲从扩展官方的composer安装命令,有时候也会出错 我们经常要往现有的项目中添加扩展包,有时候因为文档的错误引导,如下图来自 ... 
- Spring3.2.9 + JdbcTemplate 事务
			XML新增声明式事务配置 <!-- 事务管理器 --> <bean id="transactionManager" class="org.springf ... 
- Redis集群部署3.0
			我用的Mac的终端 ------------------------- 1.Redis简介 centos(5.4) Redis是一个key-value存储系统.和Memcached类似,但是解决了断 ... 
