- 0
- 0
- 约7.38千字
- 约 48页
- 2021-10-01 发布于湖北
- 举报
第5章;本章主要内容;5.1 数组 ;具有一个下标的数组称为一维数组;
具有两个或两个以上下标的数组称为二维或多维数组。
不管是几维的数组,在使用之前首先要定义,然后在程序中才可以使用。
定义一个数组,应该包括以下几个方面:
(1)确定数组的名称;
(2)确定数组的数据类型,即数组中所有元素的类型;
(3)确定数组的结构
5.1.1 一维数组的定义与引用
1.一维数组的定义
类型说明标识符 数组名[常量表达式];
如: int b[5];
2.一维数组的引用
数组名[下标]
【例5-1】定义一个一维数组,把各元素值清0,然后逆序输出各元素值。 ;3.一维数组的初始化
(1)在定义数组时对数组元素赋以初值 。
如: int a[5]={0,1,2,3,4}
(2)可以只给一部分元素赋值 。
如: int a[5]={0,1,2}
(3)对全部元素赋初值时,可以不指定数组的长度。
如: int b[ ]={0,1,2,3,4}
(4) C++不支持数组之间的直接赋值,只能一个一个元素地赋值。 ;
4.一维数组的程序举例
【例5-2】求100以内的Fibonacci数列并显示。 ;5.1.2 二维数组的定义与引用
1.二维数组的定义
类型说明符号 数组名[常量表达式1][常量表达式2] ;
如: int a[3][4] ;;2.二维数组的引用
二维数组元素的表示方式为:
数组名[下标][下标]
在引用二维数组中的元素时,只要指明该元素所在的数组名及两个下标的下标值即可,可以利用它来访问数组中的每个元素,注意下标不要超过各维的大小。 ;3.二维数组的初始化
(1)分行给二维数组赋初值 。
如: int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}}
(2)可以将所有数据写在一个大括号内 。
如:int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12} ;(3)可以只对数组中部分元素初始化 。
如: int a[3][4]={{1},{3},{5}}
(4)如果对二维数组的全部元素初始化,则定义数组时第一维长度可以省略,但第二维长度不能省 。
如: int a[ ][4]={1,2,3,4,5,6,7,8,9,10,11,12} ,
int a[ ][ 4]={{0,0,7},{},{0,18}}
【例5-3】输入一个3×2矩阵,求出矩阵中最小数,并显示其所在的行号和列号。
分析:可用变量min存储矩阵中的最小值,初始时将min的初值设为元素a[0][0]的值,然后依次利用矩阵中的其???元素与之比较,较小者存放在min中,并同时保存行号和列号,直到最后一个元素为止。 ;5.1.3 字符数组与字符串
1.字符数组的定义
用来存放字符型数据的数组为字符数组,数组中的一个元素只能存放一个字符。
如:char c[5],m[3][4]
2.字符数组的初始化
如:char c[5]={‘a’,‘b’,‘c’,‘d’,‘e’}
char c[ ]={a,b,c,d,e} ;3.字符串和字符串结束标志
字符串是用一对双引号“ ”括起来的一串字符,如,“program”、“abcdef”等都是字符串。
字符串“program”是包含7个字符的字符串,但在内存中占8个字节,最后一个字节存放‘\0’,字符串结束标志‘\0’是由系统自动添加的。
如: char c[8]={“ program”} 等价于
char c[8]={p,r,o,g,r,a,m,\0} ;4.字符串的输出
(1)用cout输出。
cout字符串或字符数组名;
如:
char s[20]={This is a string.};
couts;
也可直接输出字符串,如:
coutThis is a string.;
注意:
①结束符\0不会被输出。
②输出字符串时,cout流中采用的是字符数组名,而不是字符数组元素名。如:
char s[20]={This is a string.};
couts; //用字符数组名,输出整个字符串
couts[3]; //用字符数组元素名,只输出元素s[3]中存储的一个字符
③若一个字符数组中包含多个结束符\0,则遇到第一个\0时就结束输出。;(2)用cout流对象的put方法 。
cout.put(字符或字符变量);
利用这种方法,每次只能输出一个字符;要输出整个字符串,应采用循环的方法。如:
#include iostream.h
void ma
您可能关注的文档
- 出版保安文件01 保安部作业指导手册.doc
- 初中语文人教版八年级下册教案全集.doc
- 高一政治复习提纲.doc
- 河南省郑州市2016届高三第二次模拟考试语文试题(word版).doc
- 环境质量评价.ppt
- 江苏省文科大学生自然科学知识竞赛复习题及部分答案.doc
- 江苏省无锡市新区20152016学年八年级上学期期末考试数学试题.doc
- 江苏省扬州市江都区第二中学20152016学年八年级下学期第一次月考数学试题 ..doc
- 课题《信息技术与学科课程有效整合的研究》.doc
- 路基土方施工方案.doc
- 大学生心理素质与能力拓展训练课件.doc
- 电大2014年本科现代管理原理考试复习必备小抄完整已排版】.doc
- 电大自考《行政管理学》期末经典复习资料小抄精编打印版.doc
- 电力有限公司安全生产事故隐患排查治理管理办法.doc
- 福建安溪海峡茶博园策划[教材].doc
- 高考英语短文改错练习九 教案 教学设计(可编辑).doc
- 高考语文总复习 (高考作文题目的押扣与转换.ppt
- 河南省淮阳县西城中学七年级英语上册 unit 1 my name is gina sectionb 1a1f导学案(无答案)(新版)人教新目标版.doc
- 黑龙江省导游考试:黑龙江省导游基础知识.doc
- 黑色胶片开头动态模板.ppt
最近下载
- T_CCGA 50015—2025(医用混合气体医用氙气_医用氧气).pdf
- 《智慧能源与可再生能源》课件.ppt VIP
- 2026年教科版三年级科学下册(全册)教学设计(附教材目录).pdf VIP
- 初中英语衡水体作文范文10篇.pdf VIP
- 外研新交际英语(2024)新教材小学一年级英语下册Unit 4 Body复习课件.pptx VIP
- 新型储能项目建设预算编制与计算规定(锂离子电池储能电站分册).docx
- 风冷热泵EKAC230B(R)1、EKAC300BR1 安装使用说明书.pdf
- 《GB12801-2025生产过程安全基本要求》解读.pptx VIP
- 货币银行学-易纲.pdf VIP
- 三菱伺服MR-MR-E-A伺服放大器使用手册.pdf VIP
原创力文档

文档评论(0)