TC官方合作论坛

标题: TC 循环语句 第十章 [打印本页]

作者: 诚诚    时间: 2012-5-31 11:35
标题: TC 循环语句 第十章
第十章 TC 循环语句
10.1 概述
  循环结构是程序中一种很重要的结构。其特点是,在给定条件成立时,反复执行某程序段,直到条件不成立为止。给定的条件称为循环条件,反复执行的程序段称为循环体。TC语言提供了循环语句,可以组成各种不同形式的循环结构。用循环 语句和遍历语句构成循环

10.1 循环语句
循环语句的一般形式为:
循环 (表达式)
.....语句
循环结束
其中表达式是循环条件,语句为循环体。   循环语句的语义是:计算表达式的值,当值为真(非0)时, 执行循环体语句。其执行过程可用下例子表示,并且在每个循环语句结束时候都要以循环结束来结束。

[attach]3601[/attach]
(注:关键字中英文对应关系,循环 - while,循环结束 - endwhile)

  1. 功能 逻辑型 测试()
  2. 整型 i,sum=0
  3. i=1
  4. 循环(i<=100)
  5.      sum=sum+i
  6.      i=i+1
  7. 循环结束
  8. 返回 真
  9. 功能结束
复制代码
本例程序将执行100次循环,每执行一次,i值加1。Sum等于sum+i一次,一直循环执行100次为止。使用while语句应注意以下几点:1)  循环语句中的表达式一般是关系表达或逻辑表达式,只要表达式的值为真(非0)即可继续循环。

10.1.2 遍历语句
  遍历语句有2种形式为:
1、固定次数的遍历
  遍历(n)
  ...语句
  遍历结束
  执行次数n是一个大于0的数,且一定是一个正整数,不能是变量,只能是常量, 固定指定 N 次 循环体后,跳出 遍历语句,执行遍历 下面的语句.
(注:关键字中英文对应关系,遍历- for,遍历结束 - endfor)

图解:

[attach]4803[/attach]

实例:


  1. 功能 逻辑型 测试()
  2. 整型 i=0
  3. 遍历(100)
  4.    i=i+1
  5. 遍历结束
  6. 返回 真
  7. 功能结束
复制代码

本例程序将重复执行100次循环,每执行一次,i值加1。

2、条件表达式的遍历
遍历(整型 i=0;i<100;i++)
…… 循环语句
遍历结束

注: 整型 i : 表示定义了一个遍历语句的变量。
        i<100  :  这个是遍历语句成立的条件,只要i的值小于100,就会一直遍历下去,直到i大于等于100结束遍历。
        i++     :  这个语句相当于 i = i + 1  。

图解:

[attach]4802[/attach]


实例:

  1. 功能 逻辑型 测试()
  2. 整型 sun=0
  3. 遍历(整型 i=0;i<100;i++)
  4. sun = sun + 1
  5. 遍历结束
  6. 辅助.消息框(转换.整型转字符型(sun))
  7. 返回 真
  8. 功能结束
复制代码



10.1.3 跳出语句
   跳出语句通常用在循环语句中。如果没有跳出语句,则将成为一个死循环而无法退出。当跳出 语句用于循环语句中时,可使程序终止循环而执行循环后面的语句, 通常跳出 语句总是与如果语句联在一起。即满足条件时便跳出循环。
  (注:关键字中英文对应关系,跳出 - break)
  表现形式:
   循环(表达式1)
       ……      
   如果(表达式2)

       跳出
   如果结束
       ……   
   
循环结束
  举列:



  1. 功能 逻辑型 测试()
  2. 整型 i=0
  3. 循环(真)     //设置循环
  4.      如果(i==27)
  5.           跳出   //判断满足条件者跳出循环
  6.      如果结束
  7.      i=i+1
  8. 循环结束
  9. 返回 真
  10. 功能结束
复制代码
注意:1. 跳出语句对如果-否则的条件语句不起作用。2.在多层循环中, 一个跳出语句只向外跳一层。

10.1.4
继续 语句
  继续语句的作用是跳过循环本中剩余的语句而强行执行下一次循环。继续 语句只用在循环体中,常与如果条件语句一起使用,用来加速循环。其执行过  程可用下图表示。
(注:关键字中英文对应关系,继续 - continue)
  
循环 (表达式1)   
   ……      
  
如果 (表达式2)继续      
   ……
   如果结束

  
循环结束
:

  1. 功能 逻辑型 测试()
  2. 整型 i=0
  3. 循环(i<100)     //设置循环
  4.      如果(i<50)
  5.         i=i+2
  6.         继续   //判断满足条件者,不在执行后面的语句,直接返回循环语句继续循环
  7.      如果结束
  8.       i=i+1
  9. 循环结束
  10. 返回 真
  11. 功能结束
复制代码
事例中当i的值小于50的时候,i每次都是加2,i的值大于50的时候就每次加1了。




对于运算符以及运算表达式不熟悉的,可以回顾以下内容:
第五章,TC的算术运算符和算术表达式  http://bbs.tyuyan.com/thread-12786-1-1.html
第六章,TC的关系运算符和表达式     http://bbs.tyuyan.com/thread-12813-1-1.html

对流程语句不熟悉了的同学,可以回顾前面的内容:
第七章,TC的过程化程序设计  http://bbs.tyuyan.com/thread-12842-1-1.html
第八章,TC的如果(if)语句   http://bbs.tyuyan.com/thread-12815-1-1.html
第九章,TC的选择(select)语句  http://bbs.tyuyan.com/thread-12816-1-1.html

理解了本课的同学,那么继续学习TC的功能定义方法吧!
第十一章,TC的功能定义  http://bbs.tyuyan.com/thread-12841-1-1.html

流程语句在线观看地址: http://v.youku.com/v_show/id_XNDE2NTU0NDAw.html
http://player.youku.com/player.php/sid/XNDE2NTU0NDAw/v.swf





作者: 泥巴路    时间: 2012-5-31 11:56
提示: 作者被禁止或删除 内容自动屏蔽
作者: tyuyan    时间: 2012-5-31 13:41
给力 。 支持下。
作者: 陌上青衣。    时间: 2012-5-31 13:45
支持哈
作者: jrflsh    时间: 2012-6-2 21:28
好东西   怎么没人顶呢???
作者: juanwl    时间: 2012-6-6 23:53
讲了这么多,还是没有开明开窍
作者: scyx12345    时间: 2012-6-18 13:56
回复 1楼诚诚的帖子

支持
作者: 968    时间: 2012-6-27 02:57
菜鸟,飞呀飞@~~
作者: myismaln    时间: 2012-8-16 18:19
有点基础,简单好学
作者: jilong521    时间: 2012-9-13 13:43
努力学习中
作者: pinganckt1980    时间: 2012-9-18 07:17
教教我好吗
作者: 1414qq    时间: 2012-10-7 15:23
看了半天好像不方便啊
作者: wzjun8888    时间: 2012-10-9 22:46
支持城城
作者: 想学坏的小孩    时间: 2012-10-10 22:28
回复 1楼诚诚的帖子

如果是双层循环 否能直接跳出第二层循环?
作者: laowantong    时间: 2013-3-1 22:36
辛苦
作者: lcy944046    时间: 2013-4-5 17:13
ddddddddddddddddddd
作者: lanjunlj    时间: 2013-4-16 12:44
知道了
作者: lanjunlj    时间: 2013-4-16 12:46
支持下
作者: hyK    时间: 2013-4-21 11:34
努力学习中
作者: kayjess    时间: 2013-5-10 11:30
循环判断语句里,多个表达式,怎么输写呢?
如果 (a >0 and b>0)
and表示a和b同时大于0
or表示a和b 其中一个大于0
作者: yu5200    时间: 2013-8-3 17:28
新手请教下  循环和遍历语句有什么区别  和应用环境
什么时候适合用循环 什么时候适合用遍历

作者: 80390909    时间: 2013-8-13 00:08
adasdasdasdasdas
作者: 80390909    时间: 2013-8-13 00:09
我是来灌水的)
作者: 80390909    时间: 2013-8-13 00:12
我是来我是来灌水的变量+1)水的)
作者: 80390909    时间: 2013-8-13 00:13
我是来灌水的变量+1)
作者: 80390909    时间: 2013-8-13 00:14
我是来灌水的变量+1) 1
作者: 80390909    时间: 2013-8-13 00:42
sdasdsadasdasdassad
作者: 80390909    时间: 2013-8-13 00:44
我是来灌水的
作者: 80390909    时间: 2013-8-13 00:50
我是来灌水的2
作者: 80390909    时间: 2013-8-13 00:51
我是来灌水的27
作者: 80390909    时间: 2013-8-13 00:51
我是来灌水的14
作者: 80390909    时间: 2013-8-13 00:52
来灌水的13
作者: 80390909    时间: 2013-8-13 00:53
我是来灌水的28
作者: 80390909    时间: 2013-8-13 00:54
我是来灌水的2868
作者: 80390909    时间: 2013-8-13 00:54
xi我a是来n灌水的907
作者: 菜鸟狙丶    时间: 2013-12-14 18:05
很好的帖子!
作者: slz336    时间: 2014-8-26 13:33
学习了。做个标记留着下载!
作者: sanmaodo    时间: 2015-8-23 23:34
怎么楼主的代码,复制到TC中,全部报错???




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1