北京科技大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第6章 数组

C语言程序设计 第6章数组 八此京故太受计算机系
1 第6章 数 组 北京科技大学 计算机系 C 语言程序设计

第6数组 本章重点介绍: 61一维数组 62二维数组 63字符数组与字符串 2021/2/21
2021/2/21 第 2 6章 数组 本章重点介绍 : 6.1 一维数组 6.2 二维数组 6.3 字符数组与字符串

第6数组 一个人N门课的成绩怎样存储和处理? ●一个班N门课的成绩怎样存储和处理? 这些数据的特点:具有相同的数据类型 为了方便地使用这些数据,C语言提供了 种构造数据类型:数组。 例如:存储学生成绩用实型数组 score[5] 其中: score是数组名。该数组可以存放5个成绩, 分别用下标变量表示: score[0], score[1],“ score[4]。 下标变量也称为数组元素 2021/2/21
2021/2/21 第 3 6章 数组 ⚫ 一个人N门课的成绩怎样存储和处理? ⚫ 一个班N门课的成绩怎样存储和处理?...... 这些数据的特点:具有相同的数据类型。 为了方便地使用这些数据,C语言提供了一 种构造数据类型:数组。 例如:存储学生成绩用实型数组 score[5] 其中:score是数组名。该数组可以存放5个成绩, 分别用下标变量表示: score[0],score[1],…score[4]。 下标变量也称为数组元素

61—维数组 611一维数组的定义 数据类型数组名常量表达式; 例如:inta[0 float scores “数据类型”:是数组元素的数据类型 “数组名”:遵循C语言标识符规则。 “常量表达式”:表示数组中有多少个元素,即数 组的长度。它可以是整型常量、整型常量表达式 或符号常量。 2021/2/21
2021/2/21 4 6.1 一维数组 例如: int a[10]; float score[5]; “数据类型”: 是数组元素的数据类型。 “数组名”: 遵循C语言标识符规则。 “常量表达式”:表示数组中有多少个元素,即数 组的长度。它可以是整型常量、整型常量表达式 或符号常量。 6.1.1 一维数组的定义 数据类型 数组名[常量表达式];

611—维数组的定义(续) 以下数组定义是正确的: define n 10 float scorelN, score2NB int num 10+NB char c26 以下数组定义是不正确的 int array(10); int n; float scoren double b'a"∴.'d" char strl 2021/2/21
2021/2/21 5 以下数组定义是正确的: #define N 10 …… float score1[N], score2[N]; int num[10+N]; char c[26]; 以下数组定义是不正确的: int array(10); int n; float score[n]; double b['a'.. 'd']; char str[ ]; 6.1.1 一维数组的定义(续)

数组在内存的存放 ●数幻下标从0开蛤。 score数组 一维数组的激组元豪低地址 score[0J 在內存里按顺序存放。 91.5 数组名代表数组的 34.5 score[ 1I 地址,即 scorel的值 67.5 score 与 scorer的地址 72.0 score 值相同。 高地址84.0 scorel4 2021/2/21
2021/2/21 6 数组在内存的存放 ⚫ 数组下标从0开始。 ⚫ 一维数组的数组元素 在内存里按顺序存放。 ⚫ 数组名代表数组的首 地址,即score的值 与score[0] 的地址 值相同。 score[0] score[1] score[2] score[3] score[4] 91.5 34.5 67.5 72.0 84.0 低地址 高地址 score数组

612数组元素的引用 格式: 数组名下标表达式 例如:输入学生成绩 for(i=0;i<5;H++) scanf(%f, &scoreiD) 例如:fbm=fbn-1H+fib|n-2 下标表达式的值必须是整型表达式。 2021/2/21
2021/2/21 7 6.1.2 数组元素的引用 格式: 例如:输入学生成绩 for(i=0;i<5;i++) scanf("%f" ,&score[i]); 例如:fib[n]=fib[n-1]+fib[n-2]; 下标表达式的值必须是整型表达式。 数组名[下标表达式]

612数组元素的引用(续) 8 说明: ①下标从0开始(下界为0),数组的最大下标 (上界)是数组长度减1。 例如: int a[10; scanf("d"&a0×/下标越界*/ C编译系统不做越界检查,如果引用的数组元素 超出数组范围会破坏其他变量的值。 2021/2/21
2021/2/21 8 6.1.2 数组元素的引用(续) 说明: ① 下标从0开始(下界为0),数组的最大下标 (上界)是数组长度减1。 例如: int a[10]; scanf ("%d",&a[10]); /* 下标越界 */ C编译系统不做越界检查,如果引用的数组元素 超出数组范围会破坏其他变量的值

612数组元素的引用(续) 如引用 score|2|: ②是下标运算符,(1)计算2000+2*4=2008 引用数组元素时, (2)取出2008的内容 根据数组的首地址 score 和下标数,计算出 2000 H 915 该元素的实际地址, 2004L345 score 2008H67.5 score[2 1取出该地址的内容200|72.0sr3l 进行操作。 218c H 84.0 score 2021/2/21
2021/2/21 9 6.1.2 数组元素的引用(续) ② [ ]是下标运算符, 引用数组元素时, 根据数组的首地址 和下标数,计算出 该元素的实际地址, 取出该地址的内容 进行操作。 如引用 score[2]: (1)计算 2000+2*4=2008 (2)取出2008的内容 2000H 2004H 2008H 200CH 218CH score[0] score[1] score[2] score[3] score[4] 91.5 34.5 67.5 72.0 84.0

613—维数组的初始化 10 初始化:在定义数组时给数组元素赋初值。 1.在定义数组时,对全部数组元素赋初值 例如:inta5}={0.,1,2,3,4}; 此时可以省略数组长度,例如:inta|={0,1,2,3,4}; 2.在定义数组时,对部分数组元素赋初值 例如:inta5]}={1,2,3};系统为其余元素赋0。 3.当初值的个数多于数组元素的个数时,编译出错 例如:inta5=0,2,3,4,5}; 2021/2/21
2021/2/21 10 6.1.3 一维数组的初始化 初始化:在定义数组时给数组元素赋初值。 1.在定义数组时,对全部数组元素赋初值 例如:int a[5]={0,1,2,3,4}; 此时可以省略数组长度,例如:int a[ ]={0,1,2,3,4}; 2.在定义数组时,对部分数组元素赋初值 例如:int a[5]={1,2,3};系统为其余元素赋 0 。 3.当初值的个数多于数组元素的个数时,编译出错 例如: int a[5]={0,1,2,3,4,5};
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 北京科技大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第5章 循环结构程序设计.ppt
- 北京科技大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第4章 选择结构程序设计.ppt
- 北京科技大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第3章 顺序结构程序设计.ppt
- 北京科技大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第2章 C语言基础.ppt
- 北京科技大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第1章 预备知识.ppt
- 北京科技大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第10章 文件.ppt
- 西北大学信息科学与技术学院:《信息与编码》课程教学课件(PPT讲稿)第七章 保真度准则下的信源编码.ppt
- 西北大学信息科学与技术学院:《信息与编码》课程教学课件(PPT讲稿)第六章 波形信源和波形信道.ppt
- 西北大学信息科学与技术学院:《信息与编码》课程教学课件(PPT讲稿)第五章(5-3)循环码.ppt
- 西北大学信息科学与技术学院:《信息与编码》课程教学课件(PPT讲稿)第五章(5-5)纠错编码的基本思想.ppt
- 西北大学信息科学与技术学院:《信息与编码》课程教学课件(PPT讲稿)第五章 有噪信道编码.ppt
- 西北大学信息科学与技术学院:《信息与编码》课程教学课件(PPT讲稿)第三章 离散信道及其信道容量.ppt
- 西北大学信息科学与技术学院:《信息与编码》课程教学课件(PPT讲稿)第二章 离散信源及其信息测度.ppt
- 西北大学信息科学与技术学院:《信息与编码》课程教学课件(PPT讲稿)第一章 绪论.ppt
- 西北大学信息科学与技术学院:《信息与编码》课程教学课件(PPT讲稿)第四章 无失真信源编码.ppt
- 《计算机视觉》课程教学资源(教材)目录.doc
- 《计算机视觉》课程教学资源(教材)第九章 颜色视觉.doc
- 《计算机视觉》课程教学资源(教材)第八章 纹理.doc
- 《计算机视觉》课程教学资源(教材)第七章 运动视觉.doc
- 《计算机视觉》课程教学资源(教材)第六章 表面方向的检测.doc
- 北京科技大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第7章 函数与预处理命令.ppt
- 北京科技大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第8章 指针.ppt
- 北京科技大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第9章 结构体与共用体.ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第一章 多媒体技术概论 1.1 多媒体技术的基本概念 1.2 多媒体技术的应用状况(万麟瑞).ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第一章 多媒体技术概论 1.3 多媒体技术标准.ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第二章 媒体信息处理技术 2.1 音频处理技术.ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第二章 媒体信息处理技术(2.2)图像处理技术.ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第二章 媒体信息处理技术(2.3)视频处理技术.ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第三章 数据压缩技术 3.1 数据压缩的基本原理 3.2 数据压缩方法分类 3.3 常用压缩编码方法 3.3.1 信息熵编码.ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第三章 数据压缩技术 3.3.2 预测编码.ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第三章 数据压缩技术 3.3.3 变换编码 3.3.4 矢量量化编码.ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第三章 数据压缩技术 3.4 图像压缩标准的混合编码.ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第四章 光盘存储技术 4.1 光盘技术的发展与应用 4.2 CD_ROM光盘系统 4.2.1 光盘制作原理与方法 4.2.2 CD_ROM的物理存储格式.ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第四章 光盘存储技术 4.2.4 CD_ROM驱动器工作原理 4.3 CD_I交互式光盘系统.ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第五章 多媒体网络与通信技术 5.1 概述 5.2 可视电话系统 5.3 多媒体会议系统.ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第五章 多媒体网络与通信技术 5.4 分布式CSCW系统.ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第六章 多媒体数据库与超文本技术 6.1 MDBS体系结构 6.2 多媒体数据模型.ppt
- 南京航空航天大学:《多媒体技术及其应用》课程教学资源(PPT课件讲稿)第六章 多媒体数据库与超文本技术 6.3 超文本系统的基本概念.ppt
- 哈尔滨工业大学:《智能建筑网络通信技术》讲义.ppt
- 《数据库原理》第1章 绪论.ppt