欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

新手上路-Day 5 数组学习

程序员文章站 2024-03-19 08:03:16
...

新手上路

机械在读研究生,编程小白,目前在自学嵌入式系统。
为了督促自己的学习,同时也对每天的学习进行回顾。在此分享我自己的学习成果,以及有趣的小程序。希望各位大神不吝赐教!

Day5 数组学习

一维数组:

一维数组:只有一个下标,在内存中连续存储。
一、定义一维数组的几种方式:
<存储类型><数据类型><数组名>[<表达式>];

static int a[5]; \\默认数组元素初始化为0int a[5] = {1,2,3};\\默认a[3] a[4]0int a[] = {1,2.3,4,5}\\根据给出的元素个数确定数组空间

二、注意事项如下:
1、数组名是数组在内存中的首地址,数组初始化以后,数组名不允许改动;
错误示例:

int a[] = {1,2,3,4};
a = a + 1;

2、c不对数组的越界进行检查,在编写程序时,一定要保证数组空间的足以容纳所有数据!
3、只能逐个引用数组元素,不能直接引用整个数组。
编程实例《冒泡排序》
编程思路:新手上路-Day 5 数组学习
如图所示,由上往下,顺序对比数字大小,数字大的向下落。一共需要对比n-1轮 即可正确排序。第一轮对比需要进行5次比较,找出最大值8落到最下面。第二乱对比时就可以忽略8,对剩余的六个数字进行5次对比。所以,使用for循环嵌套,外层循环进行每一轮的切换,内层循环则保证数字之间对比的进行。
代码及运行结果如下:

新手上路-Day 5 数组学习
新手上路-Day 5 数组学习