第六课  for循环语句
      

  在实际应用中,会经常遇到许多有规律性的重复运算,这就需要掌握本章所介绍的循环结构程序设计。在Pascal语言中,循环结构程序通常由三种的循环语句来实现。它们分别为FOR循环、当循环和直到循环。通常将一组重复执行的语句称为循环体,而控制重复执行或终止执行由重复终止条件决定。因此,重复语句是由循环体及重复终止条件两部分组成。
  
  一、for语句的一般格式

  for <控制变量>:=<表达式1> to <表达式2> do <语句>;
  for <控制变量>:=<表达式1> downto <表达式2> do <语句>;
  其中for、to、downto和do是Pascal保留字。表达式1 与表达式2的值也称为初值和终值。

  二、For语句执行过程

  ①先将初值赋给左边的变量(称为循环控制变量);
  ②判断循环控制变量的值是否已"超过"终值,如已超过,则跳到步骤⑥;
  ③如果末超过终值,则执行do后面的那个语句(称为循环体);
  ④循环变量递增(对to)或递减(对downt o)1;
  ⑤返回步骤②;
  ⑥循环结束,执行for循环下面的一个语句。

  三、说明

  ①循环控制变量必须是顺序类型。例如,可以是整型、字符型等,但不能为实型。
  ②循环控制变量的值递增或递减的规律是:选用to则为递增;选用downto则递减。
  ③所谓循环控制变量的值"超过"终值,对递增型循环,"超过"指大于,对递减型循环,"超  过"指小于。
  ④循环体可以是一个基本语句,也可以是一个复合语句。
  ⑤循环控制变量的初值和终值一经确定,循环次数就确定了。但是在循环体内对循环变量的值进行修改,常常会使得循环提前结束或进入死环。建议不要在循环体中随意修改控制变量的值。
  ⑥for语句中的初值、终值都可以是顺序类型的常量、变量、表达式。

  四、应用举例

  例1.输出1-100之间的所有偶数。
    var i:integer;
    begin
     for i:=1 to 100 do
     if i mod 2=0 then write(i:5);
    end.

  例2.求N!=1*2*3*…*N ,这里N不大于10。
  分析:程序要先输入N,然后从1累乘到N。
  程序如下:
  var
    n,i : integer;{i为循环变量}
    S : longint;{s作为累乘器}
  begin
   write('Enter n=');readln(n);{输入n}
  s:=1;
   for i:=2 to n do{从2到n累乘到s中}
    s:=s*i;
   writeln(n,'!=',s);{输出n!的值}
  end.

练 习

  1. 求s=1+4+7+…+298的值。
  2. 编写一个评分程序,接受用户输入10个选手的得分(0-10分),然后去掉一个最高分和一个最低分,求出某选手的最后得分(平均分)。
  3. 用一张一元票换1分、2分和5分的硬币,每种至少一枚, 问有哪几种换法(各几枚)?

   

 
网站导航 | 关于曙光 | 联系我们 | 请提意见
Copyright © FuJian Sunshine Educational Info. Co.,Ltd.
福建曙光教育资讯有限公司 版权所有