C数组和字符串
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
chap4
二、数组的概念
1.数组:由具有相同类型的 固定数量的元素组成的结构
2.数组元素:每一个数组元素 都是一个变量,为了与一般 的变量相区别,我们称数组
元素为下标变量
3.下标变量在数组中的位置
序号称下标
下标变量的数据类型称为
下标类型(或元素类型)
第5页/共77页
返 回 上一页 下一页
§4-2-1 一维数组
第11页/共77页
上一页 下一页
chap4
(3) 对数组中部分元素指定初值 ( 这时不能 省略数组长度 ) 如 : int a[5] = { 1 , 3 , 5 };
(4) 使数组中的全部元素初始值都为 0 如: int a[5] = { 0 , 0 , 0 , 0 , 0 } ;
更简单的写法: int a[5]={ 0 } ;
下标
而下标在0 ---- 4之内, 即a[0] ---- a[4]
注意: 如果出现 a[5] = 72 ; 编译时不会指出错误, 系统会 将a[4]后下一个存储单元 赋值为72, 但这样可能会破坏数 组以外其他变量的值。
第10页/共77页
返回
上一页 下一页
四、一维数组的初始化
chap4
1. 概念 : 在定义一维数组时对各元素指定初始 值称为数组的初始化
chap4
一、一维数组的定义 二、一维数组的存储结构 三、数组元素的引用形式 四、一维数组的初始化 五、一维数组的输入和输出 六、一维数组程序设计举例(算法)
第6页/共77页
下一节 上一页 下一页
一、一维数组的定义
chap4
数组: 是一组具有相同数据类型 的变量 的有序集合。
格式 : 类型标识符 数组名[常量表达式];
chap4
【教学目的与要求】 理解数组的定义和使用,掌握数组的
常用操作和字符串的处理。 【教学重点与难点】
数组的应用,字符串的处理方法。 【教学方法】
讲授与上机相结合。
第1页/共77页
上一页 下一页
本章授课内容
数组的概念; 数组的定义; 数组的应用; 字符串 常见错误
第2页/共77页
chap4
上一页 下一页
第12页/共77页
上一页 下一页
例4.2.1: 输入n个成绩,求平均分 输出高于平均分的ch成ap绩4
#include<iostream.h>
void main( )
{ iinntt ss,[n8,i0;], n, i;
float aver=0.0;
cin>>n;
for ( i=0; i<n; i++ )
sum=sum+s; } ave=sum/80.0; cout<< “ave=”<<ave; }
假设现在要求保存每个学生的成绩, 那就不能只使用一个变量score了, 而需要40个变量,但这样一来输入、 输出、计算都会变得繁琐. 在这种 情况下,我们可以使用数组类型,说 明一个含有40个元素的数组,每个 数组元素存放一个成绩,成绩的输 入、输出、计算都可通过循环来实 现
如: int a[5] = { 1 , 3 , 5 , 7 , 9 } ;
2. 说明 (1) 初值用 { } 括起来, 数据之间用逗号分开.
(2) 对数组的全体元素指定初值,可以不指明数组 的长度, 系统会根据{ }内数据的个数确定数组 的长度。
如 : int a[ ] = { 1 , 3 , 5 , 7 , 9 } ;
:: 1046 84
第9页/共77页
a[0] a[1] a[2] : a[9]
返回
上一页
下一页
三、数组元素的引用形式
chap4
数组元素的引用: 数组名[下标]
int a[10];
a[0]=2;
a[0] = a[2]+a[4]*2
• 说明
(1) 下标可以是整型常量或整型表达式 0
24
如: a[1] , a[2*3] (2) 数组定义为 int a[5] , 数组长度为5
第3页/共77页
上一页 下一页
一、数组的引入
chap4
例4.1.1:某班有80名学生,求该班成绩的平均分
Fra Baidu bibliotek
#include <iostream.h> void main( ) { int j , sum , s ;
float ave ; sum=0; for ( j=1; j<=80 ; j++ ) { cin>>s;
§4-1 数组的概念
chap4
在科学计算和数据处理中,要用到成批数据,这些 数据类型相同,且彼此间存在一定的顺序关系,为了 便于处理,引入了数组类型。
数组是一组有序数据的集合;数组中的每一个元素 都属于同一个数据类型。用一个统一的数组名和下标 来唯一的确定数组中的元素。
数列
5
8
3
2
9
6
一维数组
a[0] a[1] a[2] a[3] a[4] a[5]
{ cciinn>>>>ss[;i];
aavveerr++==ss[;i]; }
}aver/=n;
afvoerr(/=i=n0; ; i<n; i++)
coutif<(<sa[vie]>ra;ver)
}
cout<<s[ i] ); 第13页/共77页 返 回 上一页 下一页
五、一维数组的输入和输出
第4页/共77页
上一页 下一页
#include <iostream.h> void main( ) { int j , sum , s[80] ;
float ave ; sum=0; for ( j=0; j<80 ; j++) { cin>>s[j];
sum=sum+s[j]; } ave=sum/80.0; cout<< “ave=”<<ave; }
第8页/共77页
int n; cin>>n; int a[n]; …..
返 回 上一页
错误
下一页
二、一维数组的存储结构
chap4
一个数组的所有元素都是连续存储的
int a[10]; 数组元素为: a[0],a[1],a[2]…..a[9]
所占空间为: 类型长度*元素个数
a
数组首地址
1010 95 1014 80 1018 66
例如: int a[10];
类型说明 数组名
常量表达式
第7页/共77页
上一页 下一页
chap4
int a[10];
数组名:用户定义的标识符
数组名表示了一个存储区的首地址 (即第一个数组元素的地址)
常量表达式的值为元素的个数 下标从0开始, a[0] , a[1] … a[9],没有a[10];
常量表达式中不能有变量 常量表达式的值不能是实数