A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© maoxiaomi 中级黑马   /  2015-7-3 21:32  /  651 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

十七、数组
1、把具有相同类型的若干变量按有序的形式组织起来,这些按顺序排列的同类型数据元素组成的集合称为数组,数组属于构造数据类型;
1)数组元素:构成数组的数据,元素有不同的下标,可以做单个变量使用;
2)数组的下标:是数组元素的位置的一个索引或标志,从0开始;
3)数组的维数:数组下标的个数 ,有几个就是几维数组。
2、按存储内容分类:数值数组、字符数组、指针数组、结构数组 ;
3、数组元素作为函数的参数进行数据传递:
1)数组元素(下表变量)做函数的实参使用,就是值传递与普通变量没区别;
2)数组名做为函数的形参和实参使用,函数实参必须是数组,是地址传递使用实参数组内存空间。
A、形参实参类型必须一致;
B、长度可以不相同,形参长度可以省略;
C、所有数组类形参长度都是8字节。
4、 一维数组
1)元素是基本数据类型变量不是数组的数组,称为一维数组;
2)一维数组定义:类型说明符  数组名 [常量表达式];
A:类型说明符:是任一种基本数据诶性或构造数据类型;
B:数组名:用户定义的标识符,不能和其他变量同名;
C: 常量表达式:表示数据元素的个数,也称为数组的长度,数组长度可以使用宏定义(xcode允许使用常变量描述长度);
3)一维数组的初始化 :给每一个元素赋初值,如果没有初始化是垃圾值
A:定义同时初始化 ,完全初始化可以不写长度,部分初始化其他元素值为0;
B:先定义后初始化 ,部分初始化不会使其他元素值赋值0;
4)一维数组的引用 :数组名[下标]就可以当问数组的元素;
5)一维数组存储方式:
A、计算机先分配连续的存储空间;
B、数组名存放数组的首地址,是一个被定义的常量,数组空间依次存储1-n个元素;
C、每个元素占用相同的字节数;
D、并且元素之间的地址连续。
E、一维数组计算下标地址:数组名+sizeof(数组类型)*下标
F、一维数组元素数=sizeof(数组名)/sizeof(数组类型)
G、一维数组越界
5、冒泡排序(bubble sort)
1)比较相邻元素
2)大数下沉,小数上浮
3)void maoPao(int a[],int n)  {
              int t=0
              for (int i=0;i<n-1;i++) {
                    for (int j=0;j<n-1-i;j++) {
                          if (a[j]>a[j-1]) {
                             t=a[j];
                             a[j]=a[j-1];
                             a[j-1]=a[j];
                         }
                   }
              }
     }

1 个回复

倒序浏览
沙睿 来自手机 中级黑马 2015-7-3 21:50:49
沙发
复习的不错。一起加油!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马