2015春季数学集训队编程班第3周习题(3级班)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
7.const n=5;
var a:array[1..n,1..n] of longint;
i,j,s:longint;
begin
for i:=1 to n do
for j:=1 to n do
if i mod 2=0 then a[i,j]:=i+j
else a[i,j]:=i*j;
for i:=1 to n do a[i,2]:=a[i,2]+10;
writeln;
end.
输出:
4.program cx2;
var a,k:integer;
begin
a:=13972;k:=0;
while a<>0 do
begin
a:=a div 10;k:=k+1;
end;
writeln(k);
end.
输出:
5.program cx2009p3;
begin
a[1]:=1;t:=0;
writeln(‘max=’,max)
end.
输入:
-1 21 -26 7 11 –18 34 9
输出:
3.var i:integer;
begin
for i:=1 to 13 do write(chr(63+2*i):4);
writeln;
for i:=1 to 13 do write(chr(92-2*i):4);
for j:=1 to n do write(a[i,j]:4);
writeln;
end;
end.
输出:
二、程序填空
1.请编程输出如下所示的4*4的矩阵。
1 8 9 16
2 7 10 15
3 6 11 14
4 5 12 13
const n=4;
var a:array[1..n,1..n] of integer; i,j,m:integer;
i,j,s:longint;
begin
for i:=1 to n do
for j:=1 to n do
if i=j then a[i,j]:=i*2
else if i+j=6 then a[i,j]:=j*3
else if i+j>4 then a[i,j]:=i*j mod 2;
for i:=1 to n do begin
2015春季数学集训队编程3级班第3周习题
一、阅读程序
1.var s:integer;ch:char;
count:array['a'..'z'] of integer;
begin
for ch:='a' to 'z' do count[ch]:=0;
read(ch);
while ch<>'!' do
begin
for i:=2 to 6 do
begin
s:=0;
for j:=1 to i-1 do
s:=s+a[j];
a[i]:=s+1;
end;
for i:=1 to 6 dot:=t+a[i];
writeln(‘t=’,t);
end.
输出:
6.var a:array[1..10] of char;
k:integer;ch:ar;
if (ch>='a')and(ch<='z') then
count[ch]:=count[ch]+1;
read(ch)
end;
s:=0;
for ch:='b' to 'z' do s:=s+count[ch];
writeln(s)
end.
输入:we arechinese!
输出:
2.var i,s,max:integer;
begin
for k:=1 to 10 do
a[k]:=chr(ord('c')+k);
for k:=1 to 10 do
begin
ch:=a[k];
a[k]:=a[11-k];
a[11-k]:=ch;
end;
for k:=1 to 10 do write(a[k]);
writeln;
end.
输出:
end.
三、默写程序:将白色课本上例题5.13(杨辉三角)的程序默写一次。
for j:=1 to n do a[3,j]:=a[3,j]*5;
for i:=1 to n do
for j:=1 to n do if i+j=6 then s:=s+a[i,j];
writeln('s=',s);
end.
输出:
8.const n=5;
var a:array[1..n,1..n] of longint;
a:array[1..8] of integer;
begin
for i:=1 to 8 do read(a[i]);
max:=a[1];
s:=a[1];
for i:=2 to 8 do
begin
if s<0 then s:=0;
s:= s+a[i];
if s>max then max:=s;
end;
begin
m:=1;
forto n do
begin
ifthen forto 4 do begin:=m;inc(m);end
else fordownto 1 do begin:=m;inc(m);end;
end;
for i:=1 to n do
begin for j:=1 to n do write(a[i,j],’ ’); writeln;end;
相关文档
最新文档