C语言集合(数组)

数组是一类相同元素的集合。数组游戏程序:三子棋

一、一维数组

(一)创建

int arr1[10];
char arr3[10];
double arr4[1];

注意:[]里只能是常量,不能使用变量,C99前不支持变长数组。

(二)初始化

int arr1[10] = {1,2,3};  //只初始化前三个,不完全初始化
int arr2[] = {1,2,3,4};  //根据内容确定数组个数,不指定数组大小
char arr3[3] = {'a',98,'c'};  //注意数组类型,这里是ASCII码
char arr4[] = "abcdef";  //注意\0

(三)访问

  1. 数组访问使用[],例如arr[0],下标从0开始。
  2. 计算数组元素个数可以使用sz = sizeof(arr)/sizeof(arr[0]);

(四)存储

在这里插入图片描述
可以看到,数组在内存中存放是连续的由低地址向高地址存放

二、二维数组

(一)创建

二维数组的创建需要注意:二维数组初始化可以省略行,但不能省略列。

int arr[][4] = {{2,3},{4,5}};

(二)存储

在这里插入图片描述
在这个2*2的数组中,其实也是按逐行存储

三、数组传参

  1. 数组名表示的是数组首元素地址
    有两个例外:
    (1) sizeof(数组名):计算整个数组大小(字节);
    (2) &数组名,取出的是数组的地址。
    在这里插入图片描述
  2. 数组传参时传递的是首元素地址,数组元素个数也要同时传递
void bubble_sort(int arr[], int sz)
{
\\代码实现
}

\\调用
bubble_sort(arr, sz);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值