发表在 手把手教你C++ 08-25 22:02:30
today,我们来讲讲数据结构~
数组!!!
首先,什么是数组?!
数组可以被理解为一种集合,它包括了数字集合和字符集合!!!
讲简单一点,数组就是一个大仓库,里面可以装相关数据类型的任何东西~
我们在第一课时讲过数据类型,now复习一下!
int类:整数(整型数)
long类:长整数(长整型数)
long long类:超长整数(超长整型数)
float类:小数(浮点型数)
double类:小数(双浮点型数)
char类:字符
咱们再补充一个~
bool类型:二进制的1,0数;
我们可以用true表示1,false表示0;
其意思就是真或假(1或0)
我们可以根据这些定义一个数组;
(数组也是有维度的)
数组的地址(地名):
前面说数组是一个仓库,那么,这个仓库(数组)该怎么查找里面的货物(元素)呢?
要知道,数组的存储方式:给每一个元素分配一个下标:(如图,拿一维数组举例)
一维数组:
定义方式:数据类型 数组名[数组容量];
举个栗子:
定义一个名字为a的int数组,它的数组容量是100!
int a[101];
有人会问,为什么要加一个1呢?数组容量直接为100就好了!
不~ 不~ 不~
要注意,数组下标从0开始!
王启圣讲过:“中国人一般都不喜欢从0开始吧~”
嗯,果然,我都不喜欢~
多维数组:
——一个超立体的数组空间!
定义方式:
数据类型 数组名[]…(n维数组就有n个“[]”)
例如:(这是数组名字为a的三维数组,它的分配空间为 100x100x100)
int a[100][100][100];
注意:我们在运用数组时一般都是最多使用一维数组和二维数组,并且赋值为0;
问题来了:
1.数组如何运用?
2.数组如何快速赋值?
先解决第一个问题:
数组如何运用?
我们可以像普通元素一样来用,但是,要加一个它的地址哦
例如:把数组a下表为0的元素赋值为0;
我们可以: a[0]=0;
例如:如果把a数组下标为1~10的元素全部赋值为1,可以利用循环哦!
1. for(int i=1;i<=10;i++)
2. a[i]=1;
所以,数组的用法和元素一样呢~
问题二:如何快速给数组赋值?
如果你想用for,也不是没问题!
第一种方法就是用for
代码我就不写了,和上面一样~
第二种方法:
这个方法只对于数组快速赋值为0有用哦~
代码:(对数组名为a的数组快速赋值为0)
假设这个数组容量为100:
我们可以:int a[100]={0};
第三种方法:
利用函数“memset();”
格式:
memset(数组名,全部赋值的数,sizeof(数组名));
例如:
memset(a,0,sizeof(a));
这句话就是把a数组全部赋值为0;
最后,数组的作业://照样很简单~
1.把23333这个数赋值进属于你自己的数组里面
2.输入数进一个数组并输出它!
有什么不懂记得在评论区或QQ问我哦!
今天的课就上到这里!
送给未来C++大神的你们一句话“人蠢一点不要紧,会线段树就行了!”——王启圣
下课啦!
能发一点有难度的吗酋长?