<1>前言

大家首先来思考一个问题,若是我们想要定义两个变量,求这两个数的平均数,该怎么求呢?

例如:int a = 10,b = 20

int average = (a + b) / 2;

上面的公式,我相信大家应该很快就能够求出来。

若是,我们想要定义5个变量,求他们的平均值呢?

我们是不是要这么写?

Int a = 1,b = 2,c = 3,d = 5,e = 5;

我相信这样写,大家应该也能求出来。不过,大家这个时候,应该会感觉到比较麻烦了,我们定义了太多的变量了。若是我们要求100个变量的平均数的话,那么岂不是我们要定义100个变量。这样,我想要是没有耐心的同学,肯定早就不干了吧!因此,我们聪明的程序员提出来一个叫做数组的概念。

<2>数组的概念

数组:我们把相同数据类型变量的集合称为数组。

<3>定义方式

数据类型  变量名[数组元素的个数]

例如:int a[5];//我们定义了5个int类型的元素。

<4>内存中的排序

int a[5];

 

由上图,我们可以看出:

<1>数组中共有5个元素,a[0],[1],a[2],a[3],a[4]

<2>数组的第一个下标为0,最后一个下标为数组元素个数-1

<3>数组中每个成员的大小:数组组中每个成员的大小,取决于数组元素的数据类型,此时数组成员的大小:4byte(一个int类型大小)

<4>整个数组的大小=一个数组成员的大小*数组元素的个数

即:4 * 5 = 20;

或者 sizeof(数组名),可得数组的大小

注意:数组的数组名标示数组首元素的首地址。

以int a[5]为例, 数组首元素为a[0],则它的地址为&a[0],故a 其实标示了&a[0].

思考:我们怎么理解a[0],a[1],a[2],a[3]?

a<===>&a[0]

a[0] =====>表示数组名a没有偏移,然后去对应地址中的数据。

a[1]======>表示a偏移了一个地址 1 个数组元素数据类型的大小,然后取该地址中的数据

a[2]======>表示a偏移了一个地址 2个数组元素数据类型的大小,然后取该地址中的数据

实例代码:

 

运行结果:

 

最新文章

  1. [问题]apparmor 问题导致mysql切换datadir目录失败
  2. IOS开发-PCH文件的使用
  3. 笔记二、本地git命令
  4. Android开发之parseSdkContent failed Could not initialize class android.graphics.Typeface
  5. android loadlibrary 更改libPath 路径,指定路径加载.so
  6. Winform控件缩写
  7. PropertyGrid--基本功能
  8. GDI+入门——带你走进Windows图形的世界
  9. Shell脚本运行hive语句 | hive以日期建立分区表 | linux schedule程序 | sed替换文件字符串 | shell推断hdfs文件文件夹是否存在
  10. vue+vuex初入门
  11. Struct 和 Union 的详细区别
  12. Nacos 发布 v0.8.0 Pre-GA版本,安全稳定上生产?
  13. Subplot 多合一显示
  14. size_t的使用
  15. Zabbix-3-自定义脚本获取数据
  16. mysql的密码忘记了怎么办
  17. 安卓开发环境配置及HelloWorld
  18. 使用Method swizzling (也就是运行时交换两个方法的imp ,实现重写方法)
  19. MySQL-&gt;导出/导入资料[20180521]
  20. Python绘图技巧

热门文章

  1. UserInfoActivity用户图像修改和退出登录
  2. vo、po、dto、bo、pojo、entity、mode如何区分
  3. mysql数据库的常用命令总结及具体操作步骤
  4. Python学习---Form拾遗180322
  5. Linux cal命令详解
  6. IIS 7 反向代理 URL重写 转发动态请求
  7. python---九九乘法表代码
  8. Spring 如何在 WEB 应用中使用
  9. 【转】Json判断是否存在某个属性和遍历各个属性和值
  10. Spring常用jar包的功能