长沙市小学生计算机奥林匹克竞赛决赛题答案.docVIP

长沙市小学生计算机奥林匹克竞赛决赛题答案.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
长沙市小学生计算机奥林匹克竞赛决赛题答案

2001年长沙市计算机奥林匹克竞赛决赛试题 (时间:120分钟) 一、(40分)键入一个字符串(串长不超过20),输出相应字符组成的等边三角形。 如:输入:“CHINA” 输出: 程序: program CS200101; var s:string; n,i,j:integer; begin write(Input a string:); readln(s); n:=length(s); for i:=1 to n do begin write(:40-i); for j:=1 to i do write(s[j], ); writeln end; readln end. 二、(50分)一光滑墙壁高X尺,有一个小虫从墙底部向上爬,每分钟爬Y尺。但每爬一分钟后都要休息一分钟,在休息期间又下滑一尺。编程:输入X和Y,计算该小虫最少几分钟可爬到顶端。 如:输入:X,Y=4,2 输出:5 程序: program CS200102; var x,y,s,n:integer; begin write(X,Y=); readln(x,y); if y1 then begin s:=0;n:=0; repeat s:=s+y;n:=n+1; if sx then begin s:=s-1;n:=n+1; end; until s=x; writeln(n); end else writeln(Never); readln end. 三、(50分)科学家在热带森林中发现了一种特殊的小动物,取名为“吱吱”。“吱吱”的生长繁殖过程很有规律,每对小“吱吱”经过X个月就长成一对大“吱吱”,每对大“吱吱”每个月都产下Y对小“吱吱”。假设开始时有一对小“吱吱”,并且每对“吱吱”都不死,问:过Z个月后,共有多少对“吱吱”?(X≥1,Y≥1,1≤Z≤24) (注:若当前是1月,则“过”2个月,是表示到3月的时候) 输入:X,Y,Z的值 输出:“吱吱”的总对数 如:输入:X,Y,Z=2,2,4   输出:11 程序: program CS200103; var x,y,z,s,s1,n:longint;{s1为 s2:array[1..24] of longint;{s2为小“吱吱”的个数,s2[1]代表第一天小“吱吱”的个数,依次类推} begin s:=0;s1:=0;s2[1]:=1; write(X,Y,Z=); readln(x,y,z); for n:=x to z+1 do begin s2[n]:=s1*y;{计算当天出生的小“吱吱”} s1:=s1+s2[n-x+1];s2[n-x+1]:=0;{计算当天长大的“吱吱”,s2[n-x+1]为X个月前出生的小“吱吱”个数} end; s:=s+s1;{将大“吱吱”数计入总数} for n:=1 to z+1 do s:=s+s2[n];{将小“吱吱”数计入总数} writeln(s); readln end. 四、(60分)如下图所示,键入A,B,C,D,E的值,然后从A出发,顺次经过每个数字分岔路口,选择+、-、*、/ 四种运算符之一进行运算,达到目的地E时,运算结果恰好等于E,请你将所有符合上述条件的道路全部找出来。 输入:A、B、C、D和E的值(其中A、B、C、D都是1~9的数字,E是正整数) 输出:从A能到达E的所有道路代表的运算式(注意:前两步运算要加括号)    最后打印出道路的总数。    如:输入:A,B,C,D,E=1,2,3,4,10      输出:((1+2)+3)+4=10 ((1*2)*3)+4=10 TOTAL=2 程序: program CS200104; var A,B,C,D,E,sum,f1,f2,f3,total:integer; function s(n1,n2,f:integer):integer; begin case f of 1:s:=n1+n2; 2:s:=n1-n2; 3:s:=n1*n2; 4:if (n20) and (trunc(n1/n2)=n1 div n2) then s:=n1 div n2 else s:=-1000; end; end; procedure wf(x:integer); begin case x of 1:write(+); 2:write(-); 3:wr

文档评论(0)

153****9595 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档