- 1、本文档共82页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[精品][精品]C大学教程
程序设计讲义 第七章 数组与C++标准库类模板 数组 数组声明,初始化,引用 字符数组 数组传递给函数 数组存储,排序,查找 数组的用途 程序设计要处理的数据往往是许多数据而非简单的几个数据, 对单个数据分别声明变量显露其局限性 例如,如果要处理3个学生考试成绩,我们可以声明: int grade0,grade 1,grade2; 但如果有很多成绩(例100个),该怎么办? 对一组由相同类型数据组成的数据集合使用数组 数组的特征 有序性:数组中的所有元素都有自身的序号0,1,2… 相同类型:全部是整数、浮点数、字符型,也可以数组的数组(一维数组、二维数组、多维数组), 后面所说数组是特指一维数组。 第七章 数组与C++标准库类模板 数组 数组声明,初始化,引用 字符数组 数组传递给函数 数组存储,排序,查找 一维数组的声明 int a[ 5 ] ; 内存空间占用情况 int a[5]; 1、设一个int需要占用4个字节的空间 2、存放a[0]的地址为1000,此时1000被成为数组a的基地址 初始化 声明数组时可以对数组初始化 float x[5] = { -1.1, 0.2, 33.0, 4.4, 5.05 }; 初始化表的长度短于要被初始化的数组元素数目,那么剩余元素被初始化为0。取巧 int a[10]={0}. 外部或静态数组没有被初始化,系统自动把所有元素初始化为0。 没有被初始化的自动或常量数组含有的值是无用的。 数组的存储类型不能是寄存器类型。 初始化 int a[ ] = { 2,3,4,5} int a[4] = {2,3,4,5} 当数组大小被省略,编译器计算初始化表中元素个数来确定数组元素的个数 使用一维数组 例:对数组赋值 (也达到初始化目的) #include iostream const int N= 5 int main(void) { int a[N]; int i, sum = 0; for (i = 0; i N; ++i) a[i] = 7 + i * i; return 0; } // Fig. 7.3: fig07_03.cpp // Initializing an array. #include iostream using std::cout; using std::endl; #include iomanip using std::setw; int main() { int n[ 10 ]; // n is an array of 10 integers // initialize elements of array n to 0 for ( int i = 0; i 10; i++ ) n[ i ] = 0; // set element at location i to 0 cout Element setw( 13 ) Value endl; // output each array elements value for ( int j = 0; j 10; j++ ) cout setw( 7 ) j setw( 13 ) n[ j ] endl; return 0; } 下标 int a[size], 下标表示该元素距数组起始地址的位移是多少. 故第一个元素的下标为0. 数组下标范围 [0, size-1] 下标越界 a[-1],a[size] 注意:编译器并不检查在给定的数组中下标是否有效,越界问题必须由编程人员自己解决。 应用范例片段 声明一个数组,用一个循环初始化数组 int n[10]; for (int i=0; i10; i++) n[i]=0; 应用范例片段 求数组元素之和 int n[10]={32,27, 64, 18, 95, 14, 90,70, 60, 37}; total=0; for (int i=0; i10; i++) total += n[i]; 应用范例 使用不同计数器跟踪一个筛子各个面出现的次数 分析: 筛子有6个面, 需要6个计数器, 这里可以用一个含有6个分量的数组, 为了和筛子上的数字对应, 浪费一个分量:0下标分量, 声明数组含7个分量. int frequ
您可能关注的文档
- [新版]汽车制作技术.ppt
- [新版]构建有效的高中化学教室ppt.ppt
- [新版]爱心永存.ppt
- [新版]梅毒.ppt
- [新版]经络保健与皮肤安康.ppt
- [新版]音乐与美术.ppt
- [新版]幼儿卫生保健课件.ppt
- [新版]高一英语各单位常识点总结.ppt
- [明考纲知考情] 阅读是获取知识和信息的重要途径之一。在英语高考 ....ppt
- [新版]高考英语二轮模块专题温习课件-语法填空[新课标广东省]....ppt
- 2024-2025学年高中生物学《生物:分子与细胞》(必修1)苏教版教学设计合集.docx
- 2024-2025学年高中数学必修3北师大版教学设计合集.docx
- 2024-2025学年高中思想政治(选修6)公民道德与伦理常识人教版教学设计合集.docx
- 2024-2025学年小学信息技术(信息科技)三年级全一册义务教育版(2024)教学设计合集.docx
- 2024-2025学年初中地理七年级上册鲁教版(五四学制)(2024)教学设计合集.docx
- 2024-2025学年初中历史中国历史 第二册统编版(五四学制)教学设计合集.docx
- 《5 倍的认识》(说课稿)-2024-2025学年人教版数学三年级上册.docx
- 2024-2025学年初中道德与法治九年级上册统编版(部编版)(2024)教学设计合集.docx
- 2024-2025学年初中地理七年级下册鲁教版(五四学制)(2024)教学设计合集.docx
- 2024-2025学年高中语文选修《中国小说欣赏》人教版教学设计合集.docx
最近下载
- 悬挑支模架专项施工方案(范例).docx VIP
- QY130K7C汽车起重机技术规格书-tdm-D2-20240708_20240713085532.pdf
- 2024年河南省驻马店市小升初数学高频考点检测卷含解析.doc VIP
- Module4 Planes,ships and trains.期末模块复习课件-外研版八年级上册.pptx VIP
- 电伴热带说明书.docx
- JGT491-2016 建筑用网格式金属电缆桥架.docx
- 蓝色点线背景的大数据云计算PPT模板.pptx VIP
- 第28课 初识人工智能 教案 义务教育人教版信息科技三年级全一册.pdf
- 江苏省各地市2023年中考物理试题【10套】(附真题答案).docx VIP
- 溴酸镉安全技术说明书 CAS No 14518-94-6.pdf VIP
文档评论(0)