版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第六章数组①引入数组的必要性两个例子:
a)输入100个数,要求按输入时相反的顺序打印出这100个数。
b)输入100名学生的成绩,要求把高于平均分的那些成绩打印出来。结论:对于程序中涉及到的数据,当数据类型相同且需要重复利用,对数据进行的操作也大致相似,在这种情况下,一般使用数组。②数组与构造类型数组:数组是一种常用的数据类型,它是由固定数目的相同类型的元素按一定的顺序排列而成。在pascal语言中,数组的元素个数必须事先确定,数组元素的数据类型也必须是固定的、唯一的。构造类型:构造类型是指从各种简单类型构造出来的新类型。
c)数组类型就是一种构造类型。一、一维数组1.一维数组的定义①先定义类型,后说明变量形式如下:type数组类型名=array[下标类型]of数组元素类型;例如:typerowtype=array[1..100]
ofreal;vara,b:rowtype;②类型定义与变量说明同步:形式如下:var数组名:array[下标类型]of数组元素类型;对于上例有:a,b:array[1..100]
ofreal;说明:
1)数组类型名按标识符的规则起名。2)array,of是保留字。3)[]中的下标类型可以是任何顺序类型。4)of后面说明的是数组元素的类型,同一数组中要求元素类型相同。2.数组的存储结构定义数组后,pascal编译程序在内存中为数组开辟了一串连续的存储单元。例如:typerowtype=array[1..10]
of
real;inttype=array[‘A’..’E’]
ofinteger;vara:rowtype;b:inttype;a,b两个数组在内存中的存储结构为:说明:
1)一般用某一个基类型的子界来定义下标类型。2)下标类型和数组元素类型是两个不同的概念。3.一维数组常数定义(用于给数组变量赋初始值)方法:
consta:array[1..5]
of
integer=(98,67,22,81,55);4.一维数组变量赋值方法:①逐一赋值。例如:vara,b:array[1..20]
ofinteger;i:integer;则:for
i:=1
to
20
doa[i]:=i;②整体赋值。b:=a;5.一维数组的基本操作①数组元素的赋值、输入、输出【例1】:输入100个数,按相反的顺序打印输出这100个数。typeatype=array[1..100]
of
integer;vara:atype;i:integer;beginfor
i:=1
to
100
doread(a[i]);for
i:=100
downto
1
dowrite(a[i],’’);writeln;end.【例2】:计算并输出
。其中,xi的值为1,3,5,7,…,17,19,yi的值为21,22,23,…,29,30。varx,y:array[1..10]
of
integer;i:integer;s:real;begins:=0.0;for
i:=1
to
10
dobeginx[i]:=2*i-1;y[i]:=20+i;s:=s+x[i]*y[i];end;writeln(trunc(s));end.②数组的查找:顺序查找:数组元素无序时;vara:array[1..10]
of
integer;i,x,m:integer;beginm:=i;break;end;ifm>0then
writeln(‘yes’)else
writeln(‘no’);end.3121459117610fori:=1
to
10doread(x);read(a[i]);i:=1;read(x);while
(i<=n)
and
(a[i]<>x)
dom:=0;i:=i+1;fori:=1
to
10doif
a[i]=xif
a[i]=x
thenbeginthen
writeln(‘yes’)else
writeln(‘no’);②数组的查找:二分查找:数组元素有序时1245610172035bot
mid
topread(x);bot:=1;top:=n;f:=true;while
(bot<=top)
and
(f=true)
dobeginmid:=(bot+top)
div
2;ifx=a[mid]then
f:=falseelse
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- AI在国际标准舞中的应用
- 2026年加油站手机扫码支付安全风险培训
- 2026年幼儿个体发展档案建立与分析方法
- 2025贵州省中考语文真题(原卷版)
- 2025湖南省长沙市中考地理试题(原卷版)
- 上海立达学院《安全工程信息技术与管理》2025-2026学年第一学期期末试卷(B卷)
- 2026年某公司风险管理实施细则
- 2026年小学数学教育与英语教育的有机结合
- 2026年数字货币发行流通安全风险与监管措施
- 2026年钢结构安装高处作业应急处理指南
- 焊接质量检测技术全套课件
- GB/T 32580.4-2026轨道交通地面装置高压交流开关设备及互感器第4部分:电压互感器
- 儿童狂犬病暴露后预防专家共识(2025年版)
- 2026年广东交通职业技术学院单招职业技能测试题库及完整答案详解
- 肿瘤终末期患者便秘与腹泻症状管理方案
- 2025-2030中国抽水蓄能行业深度评估及竞争格局展望分析研究报告
- 2026届语文二轮复习:专题03 文学评点题(复习讲义)(解析版)
- 2025年超星尔雅学习通《口腔医学导论》考试备考题库及答案解析
- 物业维修管理流程标准操作
- 雨课堂在线学堂《三江源生态》单元考核测试答案
- 国家开放大学《机械制造工艺学(本)》形考任务1-4大作业答案
评论
0/150
提交评论