理解为啥有数组

集合或数组的概念很好理解,一堆人,聚在一起,就可以说是一群人,这个【一群人】就是数组的概念。
那么,一只狗可不可以和一群人聚在一起呢?答案是不可以。因为人 和狗 不是一个物种。不能放到一个数组里。
通过上面的描述,你要明白两个概念

  1. 一群 变量,放到一起,就是一个数组
  2. 数组里 变量的 类型,要相同

但问题来了,这个只是现实世界中的 “数组”。在计算机的世界中,显然没有现实世界中这么灵活。那又怎么去定义数组呢?

计算机中的数组

计算机中为什么要有数组?

举个特别简单的例子,每天上课要点名。老师手里拿着个本子,到了的他就打✅,没到的就打❎。请问,计算机怎么处理这个程序
一个愚蠢的做法就是:

  1. char zhangsan = 'x';
  2. char lisi = 'x';
  3. char wangwu = 'x';
  4. ...

想想看,你要定义多少个变量?这段代码,光定义变量就要几十行。如果用数组呢?

  1. char balance[100] = {'✅‘,'',''......};

用数组,只需要一个数组变量,就可以了。
以上的例子只是一个让你理解,计算机中为什么会有数组的概念。你发散思维,还会想到很多类似的案例。
那么,我们就说手,计算机中怎么定义数组

计算机中使用数组

我们说过。人和狗是不能放到一起的。所以,定义数组,首先就要定义,你这个数组要放什么类型的数据。以及这个数组的大小,数组叫什么名字。

  1. int a[10]; //这个说的就是,这个叫做a的数组,里面只能放10int类型的数据。

有了数组了,就要往里面放数据了,怎么放?就需要用到数组的下标了,就像你们宿舍楼的门牌号一样。只不过数组的下标是严格的从0开始,依次递增的

  1. a[0]=1;
  2. a[1]=20;
  3. a[3]=38;
  4. ....
  5. 以上这样,就是往数组 第一个位置放了一个1,第二个位置放了一个20,第三个位置放了一个38

你会不会觉得,先声明数组,再一个个往里放数据,很麻烦。当然,发明编程语言的人也觉得很麻烦。所以,还有简化的语法,就是创建数组的时候同时进行初始化

  1. double balance[5] = {1000.0, 2.0, 3.4, 7.0, 50.0};

数据放进去了,如何取出来呢?

  1. //从一个叫做balance的数组里,取出第10个元素,赋值给一个叫做 salary double型变量
  2. double salary = balance[9];

题外话

理解上上面的概念,其实,你就基本理解数组是个啥了
当然,数组远远不止这些,比如二维数组,比如数组越界怎么办,比如数组里存结构体等等。但现阶段,你应该还接触不到这些,把基本功练扎实了就行了。
如果还有其他不理解的,再具体问我。

函数的概念,我明天再写点东西发给你。

题外话2

工欲善其事,必先利其器。
叔叔这么多年,如果有啥经验能交给你的,其实最重要的还真不是具体的语法知识。因为这些东西,你学就能会,多读几遍,自然就理解了。
今天,叫教你两件事吧,非常重要!!!!!!!!!

第一件:代码是敲出来的。

无论你会不会,无论你写的怎么样,千万别把编程的学习停留在读书理解上。一定要打开电脑,打开开发工具,亲手敲出来,写出来的代码,才是自己学过的。读书看过的代码,永远是别人的。

第二件:学会记笔记

真的,叔叔见过聪明的,就像天生就会编程一样。但多年下来,真正再职场取得成功的,却不是这些聪明的人。而是哪些懂得积累的人。知道为什么么?因为计算机的知识犹如汪洋大海一般,聪明固然重要,但面对永远学不完的编程知识,聪明本身就显得不那么重要了。相反,那些知道总结经验,把自己学过的,错过的,各种各样的经验记录下来的人,那些慢慢形成自己的知识体系的人,反而会厚积薄发,后来者居上,取得巨大的成就。
那么,如何积累知识呢?如何建立自己的知识体系呢?
如何建立知识体系,现在和你说可能还为时尚早,因为现在你处于什么都接触点的阶段。
那么,如何积累知识,答案就很简单了,记笔记。
怎么记笔记。推荐给你一个工具。就是你现在看到的这篇笔记用的工具。叫 【语雀】是一款markdown编辑工具。类似的还有很多,你可以baidu一个自己喜欢的markdown工具。如果不想baidu,就用【语雀】吧,挺好用的。

今天就先跟你说数组,函数明天我再写点东西给你。