基础7月18日pascal语言一维数组_第1页
基础7月18日pascal语言一维数组_第2页
基础7月18日pascal语言一维数组_第3页
基础7月18日pascal语言一维数组_第4页
基础7月18日pascal语言一维数组_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六章数组①引入数组的必要性两个例子:

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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论