C复习笔记(数组的使用)
2012-04-18 21:05
302 查看
C语言不允许对数组大小做动态定义
C语言规定只能逐个引用数组元素,不能一次引用整个数组(即将数组作为一个整体来使用)
C语言中,数组的概念有点类似数学中的集合,数组的初始化可以使用集合形式进行初始化
在数组上实现循环队列可以很好地解决斐波那契数列问题
C编译器对数组访问越界没有警报,这样会增加程序员的负担
除了引用以外,数组元素的类型可以是任意的复合类型。没有所有元素都是引用的数组(这个也是引用和指针的区别)
数组的维数要在运行之前能够确定。也就是说可以用常量、常量表达式、用常量初始化的const变量(在运行时初始化,如const int sz=getsize()的const变量不能用于定义数组的维数)、枚举常量(枚举变量也是在运行的时候确定的,因此也不可以用来指定数组的维数)
不允许数组直接复制或者赋值
数组上实现冒泡排序:
for(index=0;index<9;++index)
在数组上实现冒泡排序的改进:
int i=n-1;//n表示排序的元素个数
while(i>0){
last=0;//用来标明每一趟冒泡排序最后一次交换元素的位置
for(j=0;j<i;++j)
if(a[j]<a[j+1]){//需要交换元素位置
swap(a[j],a[j+1]);
last=j;
}
i=last;//以最后一次交换的位置为新一趟排序终点
}
C语言规定只能逐个引用数组元素,不能一次引用整个数组(即将数组作为一个整体来使用)
C语言中,数组的概念有点类似数学中的集合,数组的初始化可以使用集合形式进行初始化
在数组上实现循环队列可以很好地解决斐波那契数列问题
C编译器对数组访问越界没有警报,这样会增加程序员的负担
除了引用以外,数组元素的类型可以是任意的复合类型。没有所有元素都是引用的数组(这个也是引用和指针的区别)
数组的维数要在运行之前能够确定。也就是说可以用常量、常量表达式、用常量初始化的const变量(在运行时初始化,如const int sz=getsize()的const变量不能用于定义数组的维数)、枚举常量(枚举变量也是在运行的时候确定的,因此也不可以用来指定数组的维数)
不允许数组直接复制或者赋值
数组上实现冒泡排序:
for(index=0;index<9;++index)
for(j=0;j<9-index;++j)
if(a[j]>a[j+1]){
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
在数组上实现冒泡排序的改进:
int i=n-1;//n表示排序的元素个数
while(i>0){
last=0;//用来标明每一趟冒泡排序最后一次交换元素的位置
for(j=0;j<i;++j)
if(a[j]<a[j+1]){//需要交换元素位置
swap(a[j],a[j+1]);
last=j;
}
i=last;//以最后一次交换的位置为新一趟排序终点
}
相关文章推荐
- C++入门经典 笔记(第七章)使用数组和字符串存储信息
- 数据结构复习笔记:使用PHP实现内排序之冒泡排序和简单选择排序
- Java基础复习笔记12Java自定义注解Annotation的使用
- ubuntu使用apache+php搭建博客学习笔记(复习笔记)(未完,持续更新中)
- 指针与数组复习笔记
- C复习笔记(字符数组)
- Tolua使用笔记四:lua中的多线程与数组的获取
- Android复习笔记(10) -对话框的使用
- C++ Primer复习和学习笔记 第四章 数组和指针
- 数组复习笔记
- Java复习笔记14【Calendar类的简单使用】
- SqlParameter数组 使用笔记
- c++复习笔记(动态数组)
- 黑马程序员关于数组、冒泡排序法的复习笔记
- Java学习笔记30. 数组的使用(长度、遍历、最大最小值,查找)
- Java复习笔记[3] —— 数组,函数,异常处理
- ember.js:使用笔记1-数组数据统一显示
- 【黑马程序员】方法、数组、面向对象、封装、继承——Java复习笔记
- 【慕课笔记】第六章 数组 第2节 如何使用JAVA中的数组
- 【慕课笔记】第六章 数组 第5节 使用foreach操作数组