- 1、本文档共29页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一维数组 2
第八章 数组 Pascal数据类型 简单类型 标准类型: 整型、实型、字符型、布尔型、字符串型 自定义类型:枚举型、子界型 构造类型数组类型、集合类型、记录类型和文件类型 指针类型 一维数组 数组定义 type data=array[1..50] of integer; var x:data; 对下列问题定义数组 1、100名学生的数学成绩 2、表示50名学生的及格或不及格情况 3、每天学生出勤情况,按星期一至星期五计算 数组的基本操作 数组的输入、输出 数组元素的查找 数组元素的移动 数组元素的插入 数组元素的删除 1.输入10个数,按顺序输出这10个数 for i:=1 to 10 do begin read(a[i]); write(a[i]); end. 数组元素的查找 【基础】小冬冬历险记 【试题描述】 小冬冬历险记:小冬冬来到一条河边,河中有排成一直线的几个石墩,每个石墩上面有一枚金币,小冬冬为了凑一些盘缠,决定跳到这些石墩上拿这些金币,读入小冬冬一次跳跃的最大距离和每个石墩离开岸边的距离(不考虑石墩本身的大小,只要一次跳跃的最大距离大于等于石墩的间隔距离就算可以到达),问最多能拿到几枚金币。 如下示意图: 【输入描述】 第一行:一个整数x,即一次跳跃的最大距离(1≤x≤30) 第二行:石墩的个数n(0≤n≤20) 第三行:n个整数,用空格隔开,表示每个石墩离开河岸的距离ai(0<ai≤500)(输入石墩的距离已排序) 【输出描述】 一个整数,即可以拿到的最多金币数 【输入样例】 5 6 4 8 13 20 25 26 【输出样例】 3 【解题提示】 一次跳跃的最大距离为5,每个石墩间的距离为4、4、5、7、5、1(第一个数字4是第一个石墩离开岸边的距离,后面的数字是当前石墩离开前一个石墩的距离),只有前三个石墩才能到达,后面跳不过去了(因为一次跳跃达不到7),就拿不到了,所以只能拿到3枚金币。 program ex; var a,b:array[1..30] of integer; x,n,i,s:integer; begin read(x); read(n); for i:=1 to n do read(a[i]); b[1]:=a[1]; for i:=2 to n do b[i]:=a[i]-a[i-1]; for i:=1 to n do if b[i]x then break else inc(s); write(s); end. 题1122:数组元素的删除 把一个数组的第x个位置的元素删除掉 Input 有三行 第一行有一个整数n 第二行有n个整数 第三行有一个整数x,为要删除的位置 Output 输出更新后的数组 Sample Input 5 1 2 3 4 5 3 Sample Output 1 2 4 5 数组元素的删除 练习 小明做操 【试题描述】 做操的时间到了,小明在教室还在思考刚刚老师讲的一道题目,当他想通这个题时,同学们都已经在操场上排好队了,他赶快跑到操场上找到自己的班级队伍,希望尽快找到以前排队的位置,准备做操,小明记得应该排在第x学号同学的后面。你能不能来帮帮小明呢? 【输入描述】 输入(两行): n x y(现在队伍的长度、第x同学的学号、小明的学号) n个同学的学号(5位整数) 【输出描述】 n+1个学号(小明加入队伍后队伍中的每个数据) 【输入样例】 4 34123 23483 34812 34123 23133 45831 【输出样例】 34812 34123 23483 23133 45831 Var n,x,y,i,t:longint; a:array[1..10000] of longint; begin Read(n,x,y); for i:=1 to n do read(a[i]); for i:=1 to n do if a[i]=x then t:=i; for i:=n downto t+1 do a[i+1]:=a[i]; a[t+1]:=y; for i:=1 to n+1 do write(a[i]); end. var p:real;
文档评论(0)