新手上路-Day 5 数组学习
程序员文章站
2024-03-19 08:03:16
...
新手上路
机械在读研究生,编程小白,目前在自学嵌入式系统。
为了督促自己的学习,同时也对每天的学习进行回顾。在此分享我自己的学习成果,以及有趣的小程序。希望各位大神不吝赐教!
Day5 数组学习
一维数组:
一维数组:只有一个下标,在内存中连续存储。
一、定义一维数组的几种方式:
<存储类型><数据类型><数组名>[<表达式>];
static int a[5]; \\默认数组元素初始化为0;
int a[5] = {1,2,3};\\默认a[3] a[4] 为0;
int a[] = {1,2.3,4,5}\\根据给出的元素个数确定数组空间
二、注意事项如下:
1、数组名是数组在内存中的首地址,数组初始化以后,数组名不允许改动;
错误示例:
int a[] = {1,2,3,4};
a = a + 1;
2、c不对数组的越界进行检查,在编写程序时,一定要保证数组空间的足以容纳所有数据!
3、只能逐个引用数组元素,不能直接引用整个数组。
编程实例《冒泡排序》
编程思路:
如图所示,由上往下,顺序对比数字大小,数字大的向下落。一共需要对比n-1轮 即可正确排序。第一轮对比需要进行5次比较,找出最大值8落到最下面。第二乱对比时就可以忽略8,对剩余的六个数字进行5次对比。所以,使用for循环嵌套,外层循环进行每一轮的切换,内层循环则保证数字之间对比的进行。
代码及运行结果如下:
上一篇: Linux好玩的装逼指南
下一篇: 你做的拷贝是真的深拷贝吗