pascal中有关一维数组的问题(做好的话再加分,着急啊!)

来源:百度知道 编辑:UC知道 时间:2024/09/21 03:16:30
要简单的,用一维数组

2、输出斐波列契数列的前N项(5个1行)
0 1 1 2 3 5 8 13 21 ..........
3、输入N个整数,找出最大数所在位置,并将它与第一个数对调位置。
4、将一个数组中的所有元素倒序存放 。
【分析】A[1]←→A[N] A[2] ←→A[N-1]…… A[I] ←→A[J]
I 从1开始,每交换1次,I 加1;直到 I = N DIV 2
5、读入n个数,打印其中的最大数及其位置号。

program xx;
var
n:integer;
a:array[0..1000] of integer;

procedure init;
begin
a[1]:=0;
a[0]:=0;
write('please input n:');
read(n);
end;

procedure done;
var
i:integer;
begin
for i:=2 to n do
a[i]:=a[i-1]+a[i-2];
end;

procedure output;
var
i:integer;
begin
for i:=1 to n do
begin
write(a[i],' ');
if i mod 5 = 0
then writeln;
end;

begin {main}
init;
done;
output;
end.

第二题:program shu;
var a:array[1..100] of integer;
i:integer;
const n=11;
begin
assign(output,'shu.out');
rewrite(output);
a[1]:=0;
a[2]:=1;
for i:=3 to n do a[i]:=a[i-1]+a[i-2];
for i:=1 to n do begin
write(a[i],' ');
if i mod 5=0 then writeln;