零基础学C语言 笔记七 一维数组
来源:互联网 发布:php final function 编辑:程序博客网 时间:2024/04/29 16:25
数组:
1. 数组里面存放的是多个,相同数据类型的,并且这些数据代表的含义相同
2. 数组的特点:
a) 能够存放多个数据
b) 多个数据的类型要一致
c) 数据的意义应该形同
d) 方便管理
3. 语法:存放的数据的数据类型 数组名[存放的数据个数];
4. 赋值的时候,不能超出界限
5. 初始化
a) int scores[4] = {10,20,30};数组长度是4,存放的是10,20,30,0;
b) int scores[] ={10,20,30};数组长度是3,存放的是:10,20,30;
6. 数组的遍历
a) for(int i = 0 ; i <长度;i++)
{
printf(”%d\n”,arr[i]);
}
7.数组的长度
数组的长度 = sizeof(数组名)/sizeof(数组名[0]);
7. 数组在内存中的地址
a) 数组名 = 数组地址 = 数组的第0个元素的地址 = 数组第0个元素的低字节的地址
8. 数组和函数
a) 如果一个函数的形式参数是一个数组,那么在执行函数的过程中,不会把这个形参创建一个数组,而是创建一个存放地址的变量,把我们实参的地址传递过来。
b) 这样的话,在函数的内部,通过sizeof计算数组的长度就会丢失,因为sizeof(数组名)永远是8,是存放这个数组地址空间的大小。
c) 所以当我们传递数组的地址的时候,一并的把数组的长度也传递给这个函数
9. 选择排序
第0轮 第1轮 第2轮 第3轮
0~1 1~2 2~3 3~4
0~2 1~3 2~4
0~3 1~4
0~4
for(int i = 0;i<length-1;i++){ for(int j = i+1;j<length;j++ ) { if(arr[i] > arr[j]) { int temp = arr[i]; arr[i] = arr[j]; arr[j] =temp; } }}
- 冒泡排序
第0轮 第1轮 第2轮 第3轮
0~1 0~1 0~1 0~1
1~2 1~2 1~2
2~3 2~3
3~4
for(int i = 0;i < length-1;i++){ for(int j = 0; j< length -i -1;j++) { if(arr[j] > arr[j+1]) { int temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } }}
- 零基础学C语言 笔记七 一维数组
- 零基础学C语言 笔记八 二维数组
- 零基础学C语言 笔记一 变量 printf
- 零基础学C语言 笔记二 scanf
- 零基础学C语言 笔记五 算术表达式
- 零基础学C语言 笔记六 函数
- 零基础学C语言 笔记九 字符串
- 零基础学C语言 笔记十 指针
- 零基础学python(七)
- 零基础学C语言 笔记三 三种方法交换两个变量的值
- 零基础学C语言 笔记四 Scanf函数清除缓冲区
- C语言基础-一维数组
- C语言基础 一维数组
- [零基础学软件开发5]c语言数据类型初探
- 零基础学Qt4编程笔记(一)
- 《零基础学Python》Adventures IN Python学习笔记一
- 【一起来学C语言】数组(一)
- 零基础学python(一)
- 九度oj 1206
- HDU 2047 阿牛的EOF牛肉串 递推
- 【算法笔记】并查集小结
- ICPC 6828 Help cupid(Regionals 2014 >> Latin America)
- TCP小练习1
- 零基础学C语言 笔记七 一维数组
- django 1.8 官方文档翻译: 3-3-1 文件上传
- FMdatabase EXC_BAD_ACCESS
- Openstack国内商业模式搞笑版
- hdu2044 一只小蜜蜂...
- kafka快速入门
- 一份比较详细的DOS命令说明 (有%1参数说明)
- 心情随笔(四):重新审视自我
- Open Data Plane (ODP) 源码下载(git 服务器搭建)