


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数组及其应用 10.9输入全校学生的期中考试总分,按照成绩从高分到低分输出。学校人数不超过1800人。如:输入:5600 580 620 610 635输出:635 620 610 600 580一、数组 一)一维数组1.数组的定义用来描述由固定数目的同一类型的元素组成的数据结构。一维数组类型的一般格式: array下标1.下标2 of ;全校1800名学生: 如:var a: array 1.1800 of integer;1)、a是数组名, 代表的并不是一个变量,而是一批变量: a1,a2,a3a1800共1800个变量。2)、array、of是定义数组的保留字;3)、1.1800是数据编号的下限和上限,说明了数据的个数 (上限-下限+1);4)、最后一个是数据的基类型 :每个数据元素的数据类型。2、数组元素的使用:数组的每个元素和普通的变量完全一样,可以赋值、输入、输出等操作。如: var a: array 1.1800 of integer;读入1800个学生的语文成绩:read(a1); a1:=90; ai+j:=120;数组元素的输入与输出通常用for循环完成:For i:=1 to 1800 do read(ai);/读入For i:=1 to 1800 do write(ai, );/输出二)数组的应用1、(练习数组的输入与输出基本操作)从键盘上顺序输入n(N100)的数,按输入顺序和反序输出。输入:520 10 4 5 26输出:20 10 4 5 2626 5 4 10 20var n,i:integer; a:array1.100 of integer;begin readln(n); for i:=1 to n do read(ai); for i:=1 to n do write(ai, ); for i:=n downto 1 do write(ai, );end.2、编程将一个十进制整数k转化为二进制数(k1000000)。样例:输入:19输出:10011var k,n, i:longint; a:array1.20 of integer;begin readln(k); n:=0; while k0 do begin n:=n+1; an:=k mod 2; k:=k div 2; end; for i:=n downto 1 do write(ai);end.选择排序算法基本思想: 对待排序的序列进行n-1遍处理:第1遍处理是从a1,a2,an中选择最小的放在a1位置;第2遍处理是从a2,a3,an中选择最小的放在a2位置; 第I遍处理是将a i ,a i+1,an中最小的数与a i 交换位置,这样经过第i遍处理后,ai是所有的中的第i小。即前i个数就已经排好序了。N-1遍处理后,剩下的最后一个一定是最大的,不需要再处理了。a:待排序的数组;/从小到大排序for i:=1 to n-1 do 从第一个元素开始,进行n-1遍处理 for j:=i+1 to n do 第i遍处理 If aiaj then 交换ai和aj begin t:=ai; ai:=aj; aj:=t; end; const maxn=100;var a:array1.maxn of integer; n,i,j,t:integer;begin readln(n); for i:=1 to n do read(ai); for i:=1 to n-1 do for j:=i+1 to n do if aiAJ+1 THEN BEGIN K:=AJ; AJ:=AJ+1; AJ+1:=K; F:=1; END; IF F=0 THEN I:=N-1; END; FOR I:=1 TO N-1 DO WRITE(AI, ); writeln(aN); END.插入排序的基本思想是将待排序的记录按照其关键字值的大小插入到排好序的有序表的适当位置,直到全部插入完为止。例如把一个记录ai插入到一列有序的记录a1,a2,ai-1 (K1=K2=Ki-1)中,使长度为i的结果序列也是有序的。初始时,所谓已排好序的有序表只不过是一个记录。下面插入排序的算法:(1)首先虚设一个记录a0,存放我们要插入记录r(r=a1,a2,an)。(2)在已排序的序列a1,a2,ai-1中找出r的插入位置。即用r关键字依次与K1,K2,Ki-1进行比较,把比它大的记录右移一个位置,直到找到适当的插入位置为止。(3)把r插入到相应的位置上。这里设置a0作为结束循环的标志,执行时,可以节省时间。例3:用插入排序的方法,输入序列8,4,3,6,9,2,7并按非递减顺序输出。program aa; const n=7; var a:array0.n of integer; i,j,r:integer; begin for i:=1 to n do read(ai); for i:=2 to n do begin r:=ai; a0:=r; j:=i-1; while raj do begin aj+1:=aj; j:=j-1; end; aj+1:=r; end;for i:=1 to n-1 do write(ai, ); writeln(an); end.测试数据输入:一行,给定的7个整数8 4 3 6 9 2 7输出:一行,数字间隔一空格,最后无空格2 3 4 6 7 8 9二、多维数组及应用。当一维数组元素的类型也是一维数组时,便构成了二维数组。二维数组定义的一般格式:array下界1.上界1,下界2.上界2 of 元素类型;如:var a:array1.5,1.4 of integer;则表示a是二维数组,共有5*4=20个元素,它们是:a1,1a1,2a1,3a1,4a2,1a2,2a2,3a2,4a3,1a3,2a3,3a3,4a4,1a4,2a4,3a4,4a5,1a5,2a5,3a5,4对二维数组的输入与输出也可用二重循环来实现:输入:for i:=1 to 5 do for j:=1 to 4 do read(ai,j);输出:for i:=1 to 5 do begin for j:=1 to 4 do write(ai,j, ); writeln; end;1、输入班级中每个学生的数学、英语、物理成绩,求出每个人的总分、以及各科的平均分。输入:第一行:n(人数);以下n行:每行3个数分别代表数学、英语、物理成绩。输出:第一行:n个同学的总分。第二行:三科的平均分输入:577 88 9989 78 9790 80 7068 95 7897 87 79输出:264 264 240 241 263 84.2 85.6 84.6var a:array1.60,1.4 of integer; n,i,j:integer;begin readln(n); for i:=1 to n do for j:=1 to 3 do read(ai,j); for i:=1 to n do for j:=1 to 3 do ai,4:=ai,4+ai,j; for i:=1 to n do for j:=1 to 3 do an+1,j:=an+1,j+ai,j; for i:=1 to n do write(ai,4, );writeln; for i:=1 to 3 do writeln(an+1,i/n:0:1);end.2、输出杨辉三角输出杨辉三角的前N行(N=10)。样例:输入:4输出:111121133114641var a:array1.100,1.100 of int64; n,i,j :integer;begin readln(n); fillchar(a,sizeof(a),0); 数组初始为0 for i:=1 to n do for j:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人教六年级下册期末数学模拟真题题目经典套题答案
- 南阳市部编版四年级语文阅读理解解题技巧专题练习(附答案)
- 备战中考化学与酸和碱的中和反应有关的压轴题附详细答案
- 运城市语文五年级下册期末复习试题
- 【语文】北京市半步桥小学四年级下册期末复习试题(含答案)
- 泉州市七年级上学期期中地理试题及答案
- 2025年全国焊工操作证理论考试题库含答案
- 2025年建筑安全资质考试题库含答案
- 消毒员考试题库及答案
- 安全生产与职业健康目标管理制度
- 新教科版小学1-6年级科学需做实验目录
- 读懂诗家语省公开课金奖全国赛课一等奖微课获奖课件
- 24春国家开放大学《农业推广》调查报告参考答案
- 山西省职校技能大赛(植物病虫害防治赛项)参考试题库(含答案)
- 安全生产培训内容
- 酒店设施维护与管理的重要性与实践:延长设备使用寿命降低维修成本
- 老年人认知障碍的早期识别与干预
- 新人教版版PEP小学英语(3-6年级)单词表(带音标)
- 小兵张嘎夺枪记(课本剧)
- 《电子商务法律法规》课程标准
- 医院关于印发《即时检验临床应用管理办法》的通知
评论
0/150
提交评论