C数组和字符串_精品文档PPT课件下载推荐.ppt
- 文档编号:15476774
- 上传时间:2022-11-01
- 格式:PPT
- 页数:77
- 大小:806.50KB
C数组和字符串_精品文档PPT课件下载推荐.ppt
《C数组和字符串_精品文档PPT课件下载推荐.ppt》由会员分享,可在线阅读,更多相关《C数组和字符串_精品文档PPT课件下载推荐.ppt(77页珍藏版)》请在冰豆网上搜索。
来唯一的确定数组中的元素。
在科学计算和数据处理中,要用到成批数据,这些在科学计算和数据处理中,要用到成批数据,这些数据类型相同,且彼此间存在一定的顺序关系,为了数据类型相同,且彼此间存在一定的顺序关系,为了便于处理,引入了数组类型。
便于处理,引入了数组类型。
一维数组一维数组a0a1a2a3a4a5数列数列583296上一页上一页上一页上一页下一页下一页下一页下一页chap4例例4.1.1:
4.1.1:
某班有某班有8080名学生名学生,求该班成绩的平均分求该班成绩的平均分#includevoidmain()intj,sum,s;
floatave;
sum=0;
for(j=1;
js;
sum=sum+s;
ave=sum/80.0;
cout“ave=”ave;
假设现在要求保存每个学生的成绩假设现在要求保存每个学生的成绩,那就不能只使用一个变量那就不能只使用一个变量scorescore了了,而需要而需要4040个变量个变量,但这样一来输入、但这样一来输入、输出、计算都会变得繁琐输出、计算都会变得繁琐.在这种在这种情况下情况下,我们可以使用数组类型我们可以使用数组类型,说说明一个含有明一个含有4040个元素的数组个元素的数组,每个每个数组元素存放一个成绩数组元素存放一个成绩,成绩的输成绩的输入、输出、计算都可通过循环来实入、输出、计算都可通过循环来实现现一、数组的引入一、数组的引入上一页上一页上一页上一页下一页下一页下一页下一页chap4#includevoidmain()intj,sum,s80;
for(j=0;
jsj;
sum=sum+sj;
cout“ave=”n;
intan;
._常量表达式中不能有变量常量表达式中不能有变量常量表达式的值不能是实数常量表达式的值不能是实数_下标从下标从0开始开始,a0,a1a9,没有没有a10;
_常量表达式的值为元素的个数常量表达式的值为元素的个数错误错误返返返返回回回回上一页上一页上一页上一页下一页下一页下一页下一页chap4二、一维数组的存储结构二、一维数组的存储结构a_一个数组的所有元素都是连续存储的一个数组的所有元素都是连续存储的_数组元素为数组元素为:
a0,a1,a2.a9inta10;
_所占空间为所占空间为:
类型长度类型长度*元素个数元素个数84:
668095101010141018:
1046a0a1a2:
a9返返返返回回回回数组首地址数组首地址上一页上一页上一页上一页下一页下一页下一页下一页chap4三、数组元素的引用形式三、数组元素的引用形式_数组元素的引用数组元素的引用:
数组名数组名下标下标a0=a2+a4*2240inta10;
a0=2;
下标下标说明说明
(1)下标可以是整型常量或整型表达式下标可以是整型常量或整型表达式如如:
a1,a2*3
(2)数组定义为数组定义为inta5,数组长度为数组长度为5而下标在而下标在0-4之内之内,即即a0-a4注意注意:
如果出现如果出现a5=72;
编译时不会指出错误编译时不会指出错误,系统系统会将会将a4后下一个存储单元后下一个存储单元赋值为赋值为72,但这样可能会破坏但这样可能会破坏数组以外其他变量的值。
数组以外其他变量的值。
返返返返回回回回上一页上一页上一页上一页下一页下一页下一页下一页chap4四、一维数组的初始化四、一维数组的初始化1.概念概念:
在定义一维数组时对各元素指定初始在定义一维数组时对各元素指定初始2.值称为数组的初始化值称为数组的初始化如如:
inta5=1,3,5,7,9;
2.说明说明
(1)初值用初值用括起来括起来,数据之间用逗号分开数据之间用逗号分开.
(2)对数组的全体元素指定初值,可以不指明数组对数组的全体元素指定初值,可以不指明数组的长度的长度,系统会根据系统会根据内数据的个数确定数组内数据的个数确定数组的长度。
的长度。
如如:
inta=1,3,5,7,9;
上一页上一页上一页上一页下一页下一页下一页下一页chap4(3)对数组中部分元素指定初值对数组中部分元素指定初值(这时不能这时不能省略数组长度省略数组长度)如如:
inta5=1,3,5;
(4)使数组中的全部元素初始值都为使数组中的全部元素初始值都为0如如:
inta5=0,0,0,0,0;
更更简单的写法:
简单的写法:
inta5=0;
上一页上一页上一页上一页下一页下一页下一页下一页chap4例例4.2.1:
输入输入n个成绩个成绩,求平均分求平均分#includevoidmain()ints,n,i;
floataver=0.0;
cinn;
for(i=0;
is;
aver+=s;
aver/=n;
coutsi;
aver+=si;
iaver)coutai;
输入整个数组元素输入整个数组元素:
iai;
输出方法:
输出第输出第i个数组元素:
个数组元素:
coutai;
输出整个数组元素:
i10;
i+)coutai;
返返返返回回回回上一页上一页上一页上一页下一页下一页下一页下一页chap4_例例4.2.2:
用一维数组求用一维数组求Fibonacci数列数列#includevoidmain()inti;
intf20=1,1;
for(i=2;
i20;
i+)fi=fi-2+fi-1;
i+)if(i%5=0)coutn;
cout“t”fi;
六、一维数组程序设计举例六、一维数组程序设计举例110000:
0f0f1f2f3f4f5:
f19i=2f2=f0+f1i=3f3=f1+f2i=4f4=f2+f323586765上一页上一页上一页上一页下一页下一页下一页下一页chap4例例4.2.3:
输入一个数据,在已知数组中查找是否有该数据输入一个数据,在已知数组中查找是否有该数据58019263749a0a1a2a3a4a5a6a7a8a9#includevoidmain()inti,x;
inta10=5,8,0,1,9,2,6,3,7,4;
cinx;
i+)if(x=ai)cout“find!
”endl;
break;
if(i=10)cout“nofind!
上一页上一页上一页上一页下一页下一页下一页下一页chap4课堂练习:
课堂练习:
有一个数列有一个数列,它的第一项为它的第一项为0,第二项为第二项为1,以后以后每一项都是它的前两项之和每一项都是它的前两项之和,试生成此数列试生成此数列的前的前20项项,并按逆序显示出来并按逆序显示出来.上一页上一页上一页上一页下一页下一页下一页下一页chap4练习答案:
练习答案:
#includeVoidmain()intf20=0,1,j;
for(j=2;
j=0;
j-)/逆序显示逆序显示coutfj;
coutaij;
输入整个数组的元素:
i2;
i+)for(j=0;
jaij;
输出第输出第i行第行第j列列元素:
元素:
输出整个数组的元素:
j3;
j+)coutaij;
返回返回返回返回上一页上一页上一页上一页下一页下一页下一页下一页chap4六、二维数组程序设计举例六、二维数组程序设计举例例例4.2.4:
有一个有一个3*4的矩阵的矩阵,编编程求出其中的最大值及其所在程求出其中的最大值及其所在的行号和列号。
的行号和列号。
上一页上一页上一页上一页下一页下一页下一页下一页chap452093712610418maxrowcol1212#includevoidmain()inti,j,row=0,col=0,max;
inta34=5,2,0,9,3,7,12,6,10,4,1,8;
max=a00;
i3;
jmax)max=aij;
row=i;
col=j;
cout“max=”max;
cout“max=a”rowcol;
输出输出:
max=12max=a12上一页上一页上一页上一页下一页下一页下一页下一页chap4例例4.2.5:
将一个矩阵进行转置将一个矩阵进行转置(即原来的行变为列即原来的行变为列)5209371261041840#includevoidmain()inta34,b43,i,j;
j4;
j+)bji=aij;
i4;
j+)coutbij;
coutendl;
输入数组输入数组a进行矩阵转置进行矩阵转置输出数组输出数组ba02b20a21b12返回返回返回返回上一页上一页上一页上一页下一页下一页下一页下一页chap4课堂练习:
1.数组元素数组元素ai是该数组中的第是该数组中的第个元素个元素.2.元素类型为元素类型为int的数组的数组a10共占用共占用字节的存储字节的存储空间,其中元素空间,其中元素a5的字节地址为的字节地址为.3.元素类型为元素类型为double的数组的数组a46共占用共占用字节的字节的存储空间,其中元素存储空间,其中元素a25的字节地址为的字节地址为.4.元素类型为元素类型为char的数组的数组a1030共占用共占用字节的字节的存储空间,其中元素存储空间,其中元素a34的字节地址为的字节地址为.答案答案:
1.i+12.40a+203.192a+1364.300a+94上一页上一页上一页上一页下一页下一页下一页下一页chap4第一方面:
利用数组进行数值计算第一方面:
利用数组进行数值计算:
书中给出了三个例子,一个是计算个人所得税,二是进行书中给出了三个例子,一个是计算个人所得税,二是进行矩阵求和,三是按月进行公司产值计算,都具有代表性矩阵求和,三是按月进行公司产值计算,都具有代表性P103
(2)P103
(2)4-3数组的应用数组的应用第二方面:
利用数组进行统计第二方面:
利用数组进行统计:
书中给出了两个例子,一是统计每个候选人的选票,书中给出了两个例子,一是统计每个候选人的选票,二是统计每个用电区间的居民户数二是统计每个用电区间的居民户数:
P105
(1):
P105
(1)第三方面:
数据排序:
第三方面:
/数据结构数据结构书中介绍了两种方法:
选择排序和插入排序书中介绍了两种方法:
选择排序和插入排序(见后见后)第四方面:
查找数据:
第四方面:
顺序查找(不要求数组元素有序书中介绍了两种方法:
顺序查找(不要求数组元素有序排列)和二分查找(要求数组元素有序排列)排列)和二分查找(要求数组元素有序排列)P109
(1)P109
(1)上一页上一页上一页上一页下一页下一
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数组 字符串 精品 文档