当前课程知识点:C语言程序设计(上) >  数组(一) >  5.2 一维数组的定义和引用 >  5.2.1_2 数组的初始化

返回《C语言程序设计(上)》慕课在线视频课程列表

5.2.1_2 数组的初始化在线视频

5.2.1_2 数组的初始化

下一节:5.2.2 一维数组的输入输出

返回《C语言程序设计(上)》慕课在线视频列表

5.2.1_2 数组的初始化课程教案、知识点、字幕

接下来我们再看一下

数据的

数组的初始化

数组的初始化是什么呢

就是给它赋初值

这跟简单变量的赋初值是

同样的道理

只是现在我们涉及到了

是一组数据

那这一组数据就有

你给哪些元素

需要赋初值

给哪些元素

不需要赋初值

它的基本规则是什么样子

这里边我们给了

三个

三种情况

一种情况是

给这个数组里的全部的元素

赋初值

那它就是

从前到后

按照我们给的位置

把第一个数据给了a0

而把最后一个数据

给了最后一个元素

第二种情况是

我们只给了两个数据

那它的对应情况就是

把这两个数据给了

这个数组

里边的

前两个元素

数组里边的其余元素

这时候它自动给赋值为0

自动赋值为0

这种情况

跟它前边两个有点不同

这种情况是说

当我们有赋初值

这样的情况的时候

数组的长度

可以省略不说

什么意思呢

是因为经常有这样的情况

比如说我现在定义的是

一个班级

或者一个学院

或者一个团体

而这里边的人数并不确定

那我这个数组定义的时候

我并不确定它定义多大的时候合适

那么根据用户的需要

你给我多少数据

我就

自动的

取这个数据的个数

为这个数组的长度

比如说像这个里边

我给了4个数据

那这个a数组就是4个元素

这几种情况

我们在

这个程序里边看一下

我们还拿出来刚才

我们说

数组定义的程序例子看一下

在这里边

我们刚才是用这种方式

scanf

在循环体里边

读进去的

给这每个元素读进去的数据

然后让它求累加和

并且输出

那我们现在要初始化的时候

我们就可以把它删掉

不用读了

程序的

前边

比如说我们给

第一种

给所有元素都初始化

我们把这几个数据都给进去

给了

5个数据

每一个元素里边

对号入座

每个元素里一个

那这时候

我们就不用

在程序运行的过程里边

进行人机交互了

我们看一下

输出

现在输出的是

这个输出

在循环体里边的那个

printf的作用

最后输出来它们的和

这跟刚才的程序是一样的

在循环体里边

输出的

这个结果

如果是我们刚才说的

我只给一部分元素

比如说我后边的两个

没有给它

那么

我们输出的时候

还是按五个去循环的

那我们前三个应该是

1 2 3

理论上

后两个元素里边应该是两个0

才是对的

那么求和

应该是6

才是对的

我们看一下

前边1 2 3

后边是两个0

那么大家这里边会

还有一种情况

我们刚才还说

如果我不给这个

数据长度

我后边给了

再给了几个数

9

那这里边现在是6个元素

那我们

给它说

小于6

然后

给了这么几个数字

然后从0

到5

是对了6个元素

去做的

我们看

是6个元素合起来

它的累加和是33

可见这个数组

此刻现在定义的是

6个元素这么长

我们并没有给它的下标

下标是因为初始化的数据而得到的

那么还有一种情况

大家会说如果

我这里边是

6

给出来了

我这个

我们刚才说如果

这里边呢

后边不给的话它就是0

那能不能说

我这个数组里边哪个数据都没给

那它就应该每一个元素里边

我没有初始化

每个元素里边是0吗

其实

应该不是的

我们看一下

如果我们都没给

把它输出来

大家看一下是多少

我们同样做累加

然后把每一个元素又输出

就是说

我们没有初始化也没有给它赋值

那这个

数组元素里边是什么呢

我们看一下

随机数

是随机数

而且呢

这时候求的和已经完全不准确了

大家刚才看到了一个

如果我是部分赋值

这样的一个情况

我赋了一部分值

而那另一部分没赋值

这样运行下来的话

前边赋值的部分是

你赋的那个初值

而后边是0

但是当你全部不赋值的时候

实际上

这里边是随机数

并不是说

它都是0

所以呢

这个有两个用处

一个用处说

当你要给一个数组

全部赋相同的值的时候

你可以这样做

比如说

你都要给它赋值0

比如说这个数组

100个元素这么长

你不用敲100个0

你输一个就可以了

那这时候输出的

每个数组元素里边

都是0

如果说

给一个数组统一要清零的话

这是一个非常好的办法

但是要切记

你没有给它

赋初值

又没有给它

赋数据

那这里边不是0

这里边

大家一定要

引起注意

不要有任何误解

这个程序就这样

C语言程序设计(上)课程列表:

从问题到C语言程序设计

-1.1 计算机的问题求解方法

--1.1.1--程序设计面向的问题

--1.1.2--关于计算

--1.1.3-1关于算法-算法的特征

--1.1.3-2关于算法——算法的表示

--1.1.3-3关于算法——算法的优化

--1.1.4-1-程序设计方法

--1.1.4-2-程序设计方法

--讨论题:数学模型

-1.1 计算机的问题求解方法--作业

-1.2 C语言与C程序

--1.2.1-1-C概述

--1.2.1-2-C概述

--1.2.2-C初步

--讨论题:运算符

-1.3 C语言处理系统与程序调试运行

--1.3.1C程序如何调试运行

--1.3.2常用C语言处理系统

--1.3.3DEVC++的使用-v1

--1.3.4C语言概貌小程序

--例程

-1.4 程序中的人机交互

--1.4 printf用法

--1.4.2 scanf的用法

--例程

--作业讨论区

数据计算实现与顺序结构程序设计(一)

-2.1 算术运算的C程序实现

--2.1.1 第二章

--2.1.2 C语言算术表达式概念

--2.1.3 算术运算的实现

--2.1.4 整数相除

--2.1.5 输入格式造成的计算错误

--2.1.6 求余运算

--2.1.7 自增自减运算

--2.1.8 复合运算

--fangcheng.c

--fangcheng-1.c

--fangcheng-2.c

--fangcheng-3.c

--fangcheng-4.c

--算术混合运算.c

--讨论题:自增自减符

--讨论题:程序输出结果

--讨论题:程序运行结果

-2.1 算术运算的C程序实现--作业

-2.2 关系运算的C程序实现

--2.2.1 关系比较问题

--2.2.2 C语言关系表达式

--2.2.3关系运算优先级

--2.2.4 用关系运算做判断条件

--2.2.5 程序实例

--2.2.6 字符比较

--bukao.c

--pingshifen-1.c

--panduanzhengshu.c

--pingshifen-2.c

--字符比较.c

--讨论题:比较大小

--讨论题:程序的运行

-2.2 关系运算的C程序实现--作业

-第二周作业--作业

数据计算实现与顺序结构程序设计(二)

-2.3 逻辑运算的C程序实现

--2.3.1 逻辑运算问题~1

--2.3.2 逻辑运算表达式

--2.3.3 如何判断闰年

--2.3.4 逻辑运算优先级

--2.3.5 条件运算符

--计算结合性

--2.3.7 一个简单实例

--闰年.c

--自动购票问题.c

--讨论题:逻辑表达式

-2.3 逻辑运算的C程序实现--作业

-2.4 位运算的C程序实现

--2.4.1 什么是位运算

--2.4.2 位运算有哪些

--2.4.3 位运算怎么用

--讨论题:位运算

-2.5 几种很个别的运算

--2.5 几个很个别的运算

--讨论题

--讨论题

-2.5 几种很个别的运算--作业

-2.6 混合运算及数据类型转换

--2.6 混合运算及数据类型转换

--讨论题:数据类型

-2.7 顺序结构程序实例

--2.7.1 第一个程序:三角形

--Video

--三角形面积.c

--讨论题:工业产值

--讨论题:程序无效结果

-2.7 顺序结构程序实例--作业

选择结构的程序设计

-3.1 程序中的路径选择实现

--3.1.1_1 第三章

--3.1.1_2 神奇的if_else

--打印学生成绩.c

--一元二次方程.c

-3.1 程序中的路径选择实现--作业

-3.2 路径中的再选择——嵌套判断

--3.2.1_1 if语句的嵌套

--3.2.1_2三个数排序1029

--例程

--3.2.2 用户登录检查

--三个数排序_未优化.c

--三个数排序_优化.c

--讨论题:程序改错

-3.2 路径中的再选择——嵌套判断--作业

-3.3 复杂判断问题的C程序设计

--3.3 多级选择

--银行存款.c

--讨论题:多级选择

-3.4 多分支问题的C程序设计

--3.4.1 switch语句表达式

--3.4.2 加减乘除计算

--3.4.3 几类说明

--加减乘除运算.c

--讨论题:关于switch

-3.4 多分支问题的C程序设计--作业

-3.5 GOTO的适当使用

--3.5 GOTO的适当使用

-3.6 选择结构的程序实例

--3.6 程序展示

--计算第几天.c

--存款利息__switch实现.c

--讨论题:输出奇数

--讨论题:计算税金

-3.6 选择结构的程序实例--作业

-第四周作业--作业

循环结构的程序设计(一)

-4.1 需要重复执行的程序

--4.1.1----第四章~1

--4.1.2---while实现先判断后循环~1

--4.1.3----while循环的应用-录入速度~1

--求和.c

--打印学生成绩.c

--统计录入速度.c

--求平均数.c

-4.1 需要重复执行的程序--作业

-4.2 至少要执行一次的循环

--4.2.1至少要执行一次的循环

--4.2.2-do-while循环应用

--成绩录入_do while实现.c

--n的阶乘.c

--字符分类统计.c

--讨论题:关于while

-4.2 至少要执行一次的循环--作业

-4.3 已知循环次数用for语句

--4.3.1--用for语句控制循环次数

--4.3.2--循环的应用-求和

--求和问题.c

--斐波那契数列问题.c

--数列求和.c

--讨论题:循环语句的不同

--讨论题:循环语句

-4.3 已知循环次数用for语句--作业

-4.4 循环控制——简单循环应用

--4.4.1-循环的应用-找数-水仙花数

--4.4.2--循环的应用-求素数

--水仙花数.c

--讨论题:死循环

--讨论题:continue和break

--讨论题:猜数字

-循环结构的程序设计(一)--4.4 循环控制——简单循环应用

循环结构的程序设计(二)

-4.5 循环的嵌套

--4.5.1 循环的嵌套——九九乘法表

--4.5.2 循环的嵌套——打印三角形

--打印九九乘法表.c

--打印实心三角图案.c

--打印空心三角图案.c

--讨论题:程序运行

-4.5 循环的嵌套--作业

-4.6 break与continue

--4.6 循环中断与继续循环——break再讨论

--最大素数.c

--求正数个数及平均数.c

-4.6 break与continue--作业

-4.7 循环的综合应用

--4.7.1 数的排列组合问题

--4.7.2 循环综合应用——穷举算法

--4.7.3 循环综合应用——满足条件的数

--4.7.4 循环综合应用——求最后三位数

--4.7.5 循环综合应用——打印空心图案

--数的排列组合.c

--数的排列组合优化.c

--鸡兔同笼.c

--找满足条件的数.c

--输出14的13次方的最后三位数.c

--打印空心字符.c

--讨论题:打印图形

--讨论题:打印空心图形

--讨论题:计算闰年

-第六周作业

--虚拟实验:循环程序设计实验

-第六周作业--作业

数组(一)

-5.1 同类有序数据处理问题

--5.1.0 数组开篇

--5.1.1 同类有序数据存储问题

--讨论题:下标变量与下标

-5.2 一维数组的定义和引用

--5.2.1_1 数组的定义~1

--5.2.1_2 数组的初始化

--5.2.2 一维数组的输入输出

--5.2.3 一维数组的应用1--成绩排序(选择法)~2

--5.2.4 一维数组的应用2--Fibonacci数列

--数组定义.c

--数组初始化.c

--输出大于平均值的数.c

--反向输出.c

--选择法_成绩排序.c

--求斐波那契数列前n项.c

--讨论题:对称数

--讨论题:关于'\0'

-5.2 一维数组的定义和引用--作业

-5.3 一维字符串数组

--5.3 一维字符串数组11.24~1

--用函数测试字符串长度.c

--讨论题:编程

-5.4 字符串处理函数

--5.4 字符数组的输入与输出

--字符串反向.c

--字符串函数

--讨论题:程序如何运行

--讨论题:黑色星期五

数组(二)

-5.5 二维数组的定义与使用

--5.5 二维数组定义

--二维数组的定义与初始化.c

-5.6 二维数组的输入输出

--5.6 二维数组的输入与输出

--二位数组输出_矩阵输出.c

--讨论题:随机数据存储

-5.6 二维数组的输入输出--作业

-5.7 二维数组的应用‍

--5.7.1二维数组的应用-转置矩阵

--5.7.2 用一维数组方式引用二维数组元素

--转置矩阵.c

--找二维数组最大数.c

--讨论题:修改程序

--讨论题:关于随机数函数 rand()

-5.8 二维字符数组

--5.8 单词排序

--单词排序.c

--讨论题:回文字符串

-5.8 二维字符数组--作业

-5.9 数组综合应用

--5.9.1 应用1——学生成绩统计

--统计成绩.c

--5.9.2 应用2——删除重复字符

--删除串中的重复字符串

--5.9.3 应用3——统计字符

--5.9_4数组的应用4--矩阵相乘

--统计字符次数.c

--讨论题:洗牌

-本期课程结束语

--end

-第八周编程作业

--虚拟实验:冒泡排序算法程序设计实验

期末复习

-《C语言程序设计(上)》期末复习参考

--html

期末复习答案

-《C语言程序设计(上)》期末复习参考答案

--html

5.2.1_2 数组的初始化笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。