- 16
- 0
- 约2.83万字
- 约 30页
- 2018-03-27 发布于河南
- 举报
C++程序设计教程第4章.pdf
第4章 数 组 教学提示:迄今为止,我们使用的都是属于基本数据类型的数据,程序设计过程中,
除了要处理整型、实型、字符型、布尔型等简单数据类型的数据外,还需要处理具有结构
性质的数据。例如,全班同学的学号,所有同学某次考试的成绩等,这些数据逻辑意义相
关,有明显的结构特征。虽然这些数据本身都能够通过简单数据类型来表示,但是仅使用
简单数据类型,不能很好地体现这些数据的逻辑相关性和结构。需要一种机制来描述这些
相关的数据,这就是数据结构。 本章将介绍数组这一基本的数据结构。数组是由类型相同、逻辑意义相关的一组数据
构成的。如上面提到的全班同学的学号,全班所有同学某次考试的成绩等,这些数据都可
以用数组来描述。每个数组都有一个由标识符来充当的名字,也称为数组名。数组中的每
个元素叫数组元素,它们按顺序分配在内存中一片连续的内存单元中,每个元素占用相同
数目的单元。数组元素是按顺序排列的,顺序号叫数组元素的下标。数组元素通过数组名
和下标来表示,数组可以有多个下标,下标的个数叫数组的维数。数组按维数多少可分为
一维数组、多维数组,按数组元素的类型可分为字符数组、整型数组、实型数组和指针数
组等。 本章介绍 C++的数组,主要内容包括:一维数组的定义与使用、多维数组的定义与使
用、字符串与字符数组。 学习目标: 掌握定义一维数组和二维数组的方法以及设定初值的方法; 掌握数组和循环配合的程序设计方法; 掌握数组操作的基本技巧并能解决实际问题; 掌握数组的一个典型应用——字符串处理,熟悉常用的字符串处理函数; 了解数组的概念; 了解数组元素的存放方式。 4.1 一 维 数 组
4.1.1 一维数组的定义 一维数组中的元素 单元 是线性排列的,并用下标 0,1,2 …标识它的每个元素。如果
一维数组共有 n 个元素,则其下标是 0~ n-1 范围内的一个无符号整数。 一维数组只有一个下标。一般形式为: [ ]; 与变量声明中的存储类别相同; 指明了数组元素的类别,可以 ·86 · C++程序设计 是整型、实型、布尔型和字符型等简单数据类型,也可以是用户定义的复合数据类型,包
括数组类型; 由标识符充当,代表了一个数组变量; 后面的方括号是必
需的,它说明前面的标识符是数组名,在 C++ 中“[ ]”是作为运算符处理的,其优先级与
括号相同,从左向右结合;方括号中的 是整常量表达式,可以省略,表示数组
元素的个数,注意数组元素的下标是从零开始计数的。例如: int a[10]; 声明了 a 是一个整型数组,它有 10 个整型元素,每个元素都是整型的变量,下标的变
化范围是 0~9 。 数组元素是通过数组名和下标来访问的。程序中数组元素的表示形式为: [ ] 是值为整型的表达式,它指明了拟访问的数组元素的下标。例如,数组
a 的 10 个元素可以依次表示为: a[0],a[1],a[2],……,a[9] 在定义一维数组时要注意以下几点。 1 数据类型一般指的是该数组元素的类型。 2 数组名的命名规则要遵循 C++关于标识符的命名规则。 3 数组的元素个数就是数组长度,数组长度是用方括号括起来的一个整数,不能用
圆括号。 4 必须要说明数组的长度,且这个长度要用一个确定的正整数来表示。例如: int a[ ]; //不合法,没有定义数组的长度 int b; int a[x] //不合法,不能用一个变量定义数组的长度 5 依次也可以说明多个同类型数组。例如: int a[10],b[12],c[16]; //定义 a, b ,c 三个整型数组 如果访问数组元素时提供的下标超出了元素的数目,会导致访问越界错误,C++不检
查访问越界,这一点要特别注意。
4.1.2 一维数组的初始化 数组同变量一样需要初始化,数组的初始化可采用以下几种方法实现。 1 在声明数组时可以对数组中开始若干个元素乃至全部元素进行初始化,其方法是
把初始值按顺序放在花括号中,数值之间用逗号分开,例如: int b[10] 1,2,3, ; float c[20] 1,3,5,5,7 double d[6] 6,8,9,4,7 2 在定义数组时既可以对所有元素进行初始化,也可以只对其中的一部分元素进行初
始化。如果初始值的数目小于数组元素的数目,数组剩余的元素被自动初始化为 0,例如: int e[6] 0 ; //实际上将所有的数组元素都初始化为 0 ·86 · 第 4 章 数组 ·87 · 3 全部数组元素赋初始值时,可以不指定数组长度。计算机会根据初始化的数组元
素的个数自动分配存储空间。如果声明数组时省略了数组元素的数目,那么系统将根据初
始值的数目来确定
您可能关注的文档
- A967-05-chemical passivation SS.pdf
- AAN036e_Paints_and_Coatings.pdf
- AA_P-DP_1624_1.0_Process_Data_Sheet_--_Feed_Gas_Cooler__unshifted_.pdf
- ABAQUS connector用法.pdf
- ABAQUS_connector用法.pdf
- ABB Control Builder V2_1.pdf
- ABB(S4C IRB) 机器人操作培训说明书 完整版 .doc
- abba直线导轨样本.pdf
- abb质量流量计FCM2000+chinese+operate+manual.pdf
- Abiotic stress-inducible receptor-like kinases negatively control ABA signaling in Arabidopsis.pdf
- 2026江西南昌市市场监督管理执法稽查局招聘仓库管理人员1人备考题库及一套参考答案详解.docx
- 2026江苏省常州市体育运动学校招聘排球教练1人备考题库及完整答案详解.docx
- 2026江苏苏州张家港农商银行寒假实习招募备考题库及完整答案详解一套.docx
- 2026浙江台州银行1月份招聘备考题库及完整答案详解一套.docx
- 2026江苏扬州市侨城社区(筹)公益性岗位招聘1人备考题库及完整答案详解.docx
- 2026广西桂林市象山区政府招聘编外聘用人员2人备考题库精编答案详解.docx
- 2026江苏南京江北新区退役军人服务中心招聘编外人员6人备考题库及参考答案详解1套.docx
- 2026广西玉林市博白县公安局第一次招聘警务辅助人员29人备考题库及一套完整答案详解.docx
- 2026广西玉林市福绵区樟木供销合作社招聘财务人员2人备考题库精编答案详解.docx
- 2026春季梦想靠岸招商银行西宁分行校园招聘备考题库及答案详解(新).docx
最近下载
- 地下车位租赁协议书通用版.docx VIP
- nsr621rf-d电容器保护测控装置技术使用说明书.pdf VIP
- 19G518-3_门式刚架轻型房屋_钢结构_有吊车_.docx VIP
- 2025公安大学警务硕士真题及答案.docx VIP
- 火电厂烟气脱硫工程调整试运及质量验收评定规程.PDF VIP
- 帝人芳纶应用介绍.doc VIP
- 《黄酒酿造工艺》课件.ppt VIP
- 深度解析(2026)《JBT 8521.2-2025编织吊索 安全性 第2部分:一般用途合成纤维圆形吊装带》:构筑新时代工业安全的核心支柱与前瞻指南.pptx VIP
- 2026房东直租房屋租赁合同.docx VIP
- V03英国深海控制器DSE5220模块操作說明書.pdf
原创力文档

文档评论(0)