信息学初级班第12课

发布时间 : 星期二 文章信息学初级班第12课更新完毕开始阅读

信息学初级班第十二课

一、复习,回顾

1、一维数组的格式与应用 2、1个关键词:array 3、作业讲解 (1)1118 题目描述

给你m个整数,查找其中有无值为n的数,有则输出该数第一次出现的位置,没有则输出-1。 输入

第一行一个整数m:数的个数 ( 0 <= m <= 100 ) 第二行m个整数(空格隔开)( 这些数在 0-999999范围内 ) 第三行为要查找的数n 输出

n的位置或-1

样例输入 4

1 2 3 3 3

样例输出

3 var

a:array[1..100] of longint; m,i,n:longint; begin

readln(m);

for i:=1 to m do read(a[i]); readln; readln(n);

for i:=1 to m do if n=a[i] then begin

writeln(i); halt; end; writeln(-1); end.

(2)1120 题目描述

数组元素的移动,把数组的第x个位置的元素先保存起来,然后把x+1到n的元素,依次往前移一位,最后原来的第x个位置的元素放在最后

输入 有3行

第一行有一个整数n( n <= 10 ) 第二行有n个整数 第三行有一个整数x

输出

移动后的数组

样例输入

8

1 2 3 4 5 6 7 8 1

样例输出 2 3 4 5 6 7 8 1 var

a:array[1..100] of longint; n,x,i:longint; begin

readln(n);

for i:=1 to n do read(a[i]); readln; readln(x);

for i:=1 to n do if x<>i then

write(a[i],' '); writeln(a[x]); end.

(3)1122 1122 题目描述

把一个数组的第x个位置的元素删除掉 输入 有三行

第一行有一个整数n( n <= 10 ) 第二行有n个整数

第三行有一个整数x,为要删除的位置

输出

输出更新后的数组

样例输入

5

1 2 3 4 5 3

样例输出 1 2 4 5

var

n,x,i:longint;

s:array[1..100] of longint; begin

readln(n);

for i:=1 to n do

read(s[i]); readln; readln(x);

for i:=x to n do s[i]:=s[i+1]; for i:=1 to n-2 do write(s[i],' '); writeln(s[n-1]); end.

二、一维数组的初值定义

Pascal语言允许在定义数组类型的同时完成对数组变量的赋值工作,格式为

const 数组名:array[1..n] of 元素类型=( , ,…);

例如:const a:array[1..6] of integer=(2,1,5,7,9,6); 相当于定义数组元素:

a[1]:=2;a[2]:=1;a[3]:=5; a[4]:=7;a[5]:=9;a[6]:=6。

三、课堂程序示例(数组与字符串复习) 1、1123 题目描述

对数组的元素按从小到大进行排序

输入

有两行 第一行有一个整数n( 5 <= n <= 10 ) 第二行有n个整数

输出

输出更新后的数组

样例输入

8

1 2 3 6 8 7 4 5

样例输出

1 2 3 4 5 6 7 8 var

a:array[1..10] of longint; n,i,j,t: longint; begin

readln(n);

for i:=1 to n do read(a[i]); for i:=1 to n-1 do for j:=i+1 to n do if a[i]>a[j] then begin t:=a[j]; a[j]:=a[i]; a[i]:=t; end;

for i:=1 to n-1 do write(a[i],' '); writeln(a[n]); end. 2、1066

题目描述

给定一个具体的日期,请输出,这一天是当年的第几天?

输入

输入一行,为年-月-日,

输出

输出一行,只有一个整数,表示这一天为那一年的第多少天

样例输入

2000-1-31

联系合同范文客服:xxxxx#qq.com(#替换为@)