第五章重复结构河师大附中信息技术•重复控制结构为计算机程序描述重复计算所提供的控制手段。一个重复控制结构需指明以下三件事情:•1.被重复执行的语句;•2.是否重复的条件;•3.具体的重复方式。•在PASCAL语言,用for,while和repeat三种语句描述重复控制结构。第一节FOR语句•for语句用来描述已知重复次数的重复结构。FOR语句有二种格式:•1.for控制变量:=初值to终值do语句;•2.for控制变量:=初值downto终值do语句;•为了正确使用for语句,需遵守以下几点约定:•1.for语句的控制变量、初值、终值的数据类型应一致,且限于整型、布尔型和字符型等对函数ord有意义的数据类型,即序数类型;•2.初值与终值一经确定,重复次数就确定不变了。•3.控制变量在重复语句内不能施加任何赋值操作;•4.for语句正常结束后,控制变量值无意义。•例5-1打印输出大写英文字符A到Z,以及对应的ASCII的序号。•Programexample5_1;•var•i:char;•begin•fori:='A'to'Z'dowrite(i:4,ord(i):4);•readln;•end.•例5-2由键盘输入N(N<=12),打印输出N!的值。••Programexample5_2;•Var•n,i,s:longint;•begin•write(’InputN=’);•readln(n);•s:=1;•fori:=ndownto1dos:=s*i;•writeln(n,’!=’,s);•end.•例5-3计算公式h(n)=1+1/2+1/3+…+1/n前n项的和。••programexample5_3;•vari,n:integer;•h:real;•begin•write('InputN=');•readln(n);•h:=0;•fori:=1tondoh:=h+1/i;•writeln('h=',h);•end.•例5-4有一个四位的正整数,它的前两位数和后两位数之和的平方,等于其本身。打印输出满足以上条件的所有正整数。••Programexample5_4;•var•i,m,n:integer;•begin•fori:=1000to9999dobegin•m:=idiv100;•n:=imod100;•if(m+n)*(m+n)=ithenwriteln(i);•end;•end.•例5-5在8*8的国际象棋的棋盘上,第一格放一粒米,第二格放两粒米,第三格放四粒米,第四格放八粒米,以此类推,后一格是前一格的两倍。问共需多少粒米?•Programexample5_5;•var•i:byte;•t,s:real;•begin•t:=1;•s:=1;•fori:=2to64dobegin•t:=t*2;•s:=s+t;•end;•writeln('Total:',s:0:0);•end.•1、编写一个评分程序,接受用户输入1个选手的10个得分(0-10分),然后去掉一个最高分和一个最低分,求出某选手的最后得分。(平均分)VARa,max,min,i:integer;s:real;beginreadln(a);max:=a;min:=a;s:=a;•fori:=2to10do•begin•readln(a);•s:=s+a;•ifa>maxthenmax:=a;•ifa