VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 14989|回复: 188

《实用C++》第19课 数组与一维数组

  [复制链接]
01_avatar_middle
最佳答案
39 
online_admins 发表于 2017-12-26 00:28:56 | 显示全部楼层 |阅读模式
1、为什么要有数组?
通俗的说数组就是同类型的一群数据,定义一个数组,就是定义一群数据。例如,某个班有60个学生,定义变量来表示每个学生的学号,第一名是101号,第二名是102号,以此类推。
如果按照之前的做法,那么恐怕就要定义60个变量了,大概如下:
int stu_1_no = 101;
int stu_2_no = 102;
int stu_3_no = 103;
...
int stu_60_no = 160;
那么如果说要表示全校1000名学生的学号呢?难道要定义1000个变量不成?肯定是不行的,太多了也没办法定义。所以在C++中提出了数组这个东西。之前说过定义一个数组,就是定义一群数据。所以大概的定义如下:
int stu_no[60];
这样一定义之后,就一下子定义了60个int类型的变量,他们统一放在一个数组里面,stu_no 就是数组的名字,访问数组里面的每个元素必须通过这个名字来访问。

2、如何定义数组?
上面已经粗略的给大家定义了一个学号的数组:int stu_no[60];
其中 int 就是这个数组中所有元素的类型,stu_no 就是数组的名字,以后访问数组中任何一个元素都得靠他,60就是这个数组中元素的个数。
所以数组的基本定义格式如下:
类型名 数组名[常量表达式];

注意,中括号内部的常量表达式用以表示数组中元素的个数,这个必须是个常量或常量表达式,不能是个变量或者一个不确定的值,不然编译阶段就直接报错了。因为定义好了之后,系统马上就根据这个个数来分配空间了。如果是个变量,系统就不知道要分配多少空间。

数组名字的命名规则跟变量是一样的,只能使用数字、字母、下划线,而且数字不能做开头。

3、如何访问数组中的元素:
数组必须先定义之后再使用,需要通过下标来访问,具体的访问格式如下:
数组名[元素下标];
这个元素的下标是从0开始的,范围是0~个数-1,例如:int stu_no[60]; 那么下标就是 0~59,大家明白了吗?
备注:这个下标可以是常量也可以是变量,但必须在规定的范围内访问,不然会出现访问越界,导致程序崩溃的重大低级问题。

4、一维数组的初始化:
①、在定义数组的时候就对数组的全部元素初始化:
int stu_no[5] = {101, 102, 103, 104, 105};

②、在定义数组的时候对部分元素进行初始化:
int stu_no[5] = {101, 102};
后面未初始化的默认赋初值0

③、在定义数组的时候就对数组的全部元素初始化,可以不指定数组长度:
int stu_no[] = {101, 102, 103, 104, 105};

不管是定义的时候指定长度还是不指定长度,总结起来就一个规则,定义的时候让系统知道数组的长度就可以了,也就是定义即确定大小

5、一维数组代码举例:
一整形数组中有10个数,分别是:5,8,9,0,2,1,4,7,6,3;
求出数组中最大和最小的数并进行输出。

6、小作业:
对第5点的数组进行排序,并输出排序后的数组内容。


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
教程在线观看地址:
https://www.bilibili.com/video/av38388453/?p=21
MP4高清视频下载地址:链接:https://pan.baidu.com/s/1_Fen4JSVji29eIB0g1J_lQ 提取码:j4ne
本节课件下载(回复后可见):
游客,如果您要查看本帖隐藏内容请回复

备注:VIP会员可免费下载本站所有资源(点击查看)
提示:通过购买VC驿站U盘打包(点击查看)也可加入终身Vip会员^_^




上一篇:《实用C++》第18课 局部变量和全局变量
下一篇:《实用C++》第20课 字符数组
59_avatar_middle
最佳答案
0 
在线会员 发表于 2019-10-7 13:23:31 | 显示全部楼层
int main()
{
        int t;
        int num[10] = { 5, 8, 9, 0, 2, 1, 4, 7, 6, 3 };
        for (int idx = 0; idx < 10;idx++)
        {
                for (int v = 0; v < 9;v++)
            {
                        if ( num[v]>num[v+1])
                                continue;
                        else
                        t = num[v];
                        num[v] = num[v+1]   ;    //排序  mua~
                        num[v + 1] = t;
            }                   
        }
        for (int i = 0; i < 10;i++)
        {
                cout << num[i] << "\n";
        }
        return 0;
}
61_avatar_middle
最佳答案
0 
donate_vip 发表于 2018-4-5 14:41:19 | 显示全部楼层
感谢楼主分享,新手学习了
15_avatar_middle
最佳答案
0 
在线会员 发表于 2018-3-21 23:13:31 | 显示全部楼层
支持支持支持
55_avatar_middle
最佳答案
0 
在线会员 发表于 2017-12-26 09:09:40 | 显示全部楼层
楼主威武,期待视频!
98_avatar_middle
最佳答案
0 
在线会员 发表于 2017-12-26 09:20:25 | 显示全部楼层
续集学习
78_avatar_middle
最佳答案
0 
在线会员 发表于 2018-1-5 09:36:46 | 显示全部楼层
又出新课,学习学习。
10_avatar_middle
最佳答案
0 
在线会员 发表于 2018-1-13 13:58:44 | 显示全部楼层
感谢楼主分享
99_avatar_middle
最佳答案
0 
在线会员 发表于 2018-1-26 10:55:50 | 显示全部楼层
谢谢楼主分享!
94_avatar_middle
最佳答案
0 
online_vip 发表于 2018-1-27 11:00:29 | 显示全部楼层
继续学习 感谢老大
80_avatar_middle
最佳答案
0 
在线会员 发表于 2018-2-3 10:56:49 | 显示全部楼层
继续学习中。。。
75_avatar_middle
最佳答案
0 
donate_vip 发表于 2018-2-4 13:25:49 | 显示全部楼层
又出新课,学习学习。
89_avatar_middle
最佳答案
0 
在线会员 发表于 2018-2-4 18:12:11 | 显示全部楼层
学习多维数组
51_avatar_middle
最佳答案
0 
online_vip 发表于 2018-2-5 18:59:44 | 显示全部楼层
支持syc老大
13_avatar_middle
最佳答案
0 
online_vip 发表于 2018-2-5 21:27:41 | 显示全部楼层
hi  world
95_avatar_middle
最佳答案
0 
online_vip 发表于 2018-2-6 09:51:44 | 显示全部楼层
谢谢楼主
32_avatar_middle
最佳答案
0 
在线会员 发表于 2018-2-7 13:36:36 | 显示全部楼层
感谢楼主分享
74_avatar_middle
最佳答案
0 
在线会员 发表于 2018-2-7 18:26:18 | 显示全部楼层
看看   
65_avatar_middle
最佳答案
0 
在线会员 发表于 2018-2-8 10:15:41 | 显示全部楼层
Thanks&#9834;(&#65381;ω&#65381;)&#65417;  楼主威武
18_avatar_middle
最佳答案
0 
online_vip 发表于 2018-2-9 08:06:31 | 显示全部楼层
学习学习
22_avatar_middle
最佳答案
0 
online_vip 发表于 2018-2-9 22:39:50 | 显示全部楼层
继续学习 感谢老大
07_avatar_middle
最佳答案
0 
在线会员 发表于 2018-2-11 08:32:37 | 显示全部楼层
天天学习
49_avatar_middle
最佳答案
0 
在线会员 发表于 2018-2-11 21:03:23 | 显示全部楼层
rhf rhf rhf
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

×【发帖 友情提示】
1、请回复有意义的内容,请勿恶意灌水;
2、纯数字、字母、表情等无意义的内容系统将自动删除;
3、若正常回复后帖子被自动删除,为系统误删的情况,请重新回复其他正常内容或等待管理员审核通过后会自动发布;
4、感谢您对VC驿站一如既往的支持,谢谢合作!

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号 )|网站地图wx_jqr

GMT+8, 2020-12-1 15:50

Powered by CcTry.CoM

© 2009-2020 cctry.com

快速回复 返回顶部 返回列表