TC官方合作论坛

 找回密码
 立即注册
查看: 8868|回复: 28
打印 上一主题 下一主题

[失效暂存] TC 如果语句 第八章

[复制链接]
跳转到指定楼层
楼主
发表于 2012-5-31 10:27:48 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
第八章 TC 如果语句
8.1 如果语句
  如果语句,也就是 如果 语句,用如果语句可以构成分支结构.它根据给定的条件进行判断,以决定执行某个分支程序段.TC语言的如果语句有两种基本形式,并且每个如果语句的结尾都要有一个 如果结束。
  (注:关键字中英文对应关系,如果 - if,否则 - else,如果结束 - endif)
  如果语句的两种形式


8.1.1 第一种形式为基本形式:如果 ()
  如果(表达式)
     //语句
  如果结束
  其语义是:如果表达式的值为真,则执行其后的语句,否则不执行该语句。其过程可表示为下面例子。
  1. 功能 逻辑型 测试()
  2. 整型 a=1,b=2,max
  3. max=a
  4. 如果(a>b)
  5. max=b
  6. 如果结束
  7. 返回 真
  8. 功能结束
复制代码

  本例程序中,输入两个数a,b.把a先赋予变量max,再用if语句判别max和b的大小,如max小于b,则把b赋予max.因此max中总是最大的那个数,最后输出max的值。
8.1.2 第二种形式为: 如果-否则
  如果-否则 也是属于同一个分支,所以否则结束后面一定要加上如果结束来结束如果语句。
  如果(表达式)     
    语句1   
  否则
     语句2
  如果结束
其语义是:如果表达式的值为真,则执行语句1,否则执行语句2 。其执行过程可表示为下面例子。
  1. 功能 逻辑型 测试()
  2. 整型 a=1,b=2,max
  3. max=a
  4. 如果(a>b)
  5.       max=a
  6. 否则         
  7.       max=b  
  8. 如果结束
  9. 返回 真
  10. 功能结束
复制代码
  改用如果-否则 语句判别a,b的大小,若a大,则max等于a,否则max等于b。

8.1.3 如果语句的嵌套
  如果语句的嵌套
  当如果语句中的执行语句又是如果语句时,则构成了如果 语句嵌套的情形。
  其一般形式可表示如下:
  如果 (表达式)
  如果结束
  如果 (表达式)
  如果结束
  或者为
  如果 (表达式)  
     如果语句
     如果结束   
  否则
     如果语句
     如果结束
   如果结束
在嵌套内的如果语句可能又是如果-否则型的,这将会出现多个如果和多个否则重叠的情况,这时要特别注意如果和否则的配对问题,而且还要匹配好如果结束来结束相应的如果语句。
例如:
如果(表达式1)
  如果 (表达式2)
      语句1
  否则
  如果结束
如果结束
语句2
其中的否则究竟是与哪一个如果配对呢?
应该理解为:
如果 (表达式1)
  如果  (表达式2)
     语句1
     否则
     语句2
  如果结束
如果结束
为了避免这种二义性,TC语言规定,否则总是与它前面最近的如果和如果结束 配对,因此对上述例子应按前一种情况理解。
下面我们综合举个例子:
[例]



  1. 功能 逻辑型 测试(逻辑型 a,整型 b,整型 c,整型 max)
  2. 如果(a)
  3.    如果(b>c)
  4.        max=b
  5.    否则
  6.        max=c
  7.    如果结束
  8. 否则
  9.    如果(b<c)
  10.        max=b
  11.    否则
  12.       max=c
  13.    如果结束
  14. 如果结束
  15. 返回 真
  16. 功能结束
复制代码
  改用如果-否则语句判别a为真的时候, b大于c, max等于b, 否则max等于c。 如果a为假的时候, b小于c, max=b, 否则max=c。



对于运算符以及运算表达式不熟悉的,可以回顾以下内容:
第五章,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的选择(select)语句  http://bbs.tyuyan.com/thread-12816-1-1.html
第十章,TC的循环(while,repeat)语句  http://bbs.tyuyan.com/thread-12818-1-1.html

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

29#
发表于 2017-8-27 11:57:29 | 只看该作者
进度条设置进度("进度条0",10)
//进度的值不能小于0和大于99
回复 支持 反对

使用道具 举报

28#
发表于 2015-12-29 23:06:15 来自手机 | 只看该作者
为什么我觉得第一个例子括号里应该是小于号呢
回复 支持 反对

使用道具 举报

27#
发表于 2014-8-26 13:50:04 | 只看该作者
好好~~谢谢啊,我是刚来的~辛苦了
回复 支持 反对

使用道具 举报

26#
发表于 2013-6-23 16:12:30 | 只看该作者
回复 1楼诚诚的帖子

AAAAaaa
回复 支持 反对

使用道具 举报

25#
发表于 2013-4-20 09:33:16 | 只看该作者
沙发
回复 支持 反对

使用道具 举报

24#
发表于 2013-4-16 12:42:34 | 只看该作者
懂了点
回复 支持 反对

使用道具 举报

23#
发表于 2013-3-1 22:33:47 | 只看该作者
谢谢
回复 支持 反对

使用道具 举报

22#
发表于 2013-2-5 15:01:00 | 只看该作者
学不会啊。。
回复 支持 反对

使用道具 举报

21#
发表于 2013-1-25 19:36:37 | 只看该作者
真是受用啊!
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18043773号

GMT+8, 2025-11-5 01:16 , Processed in 0.139057 second(s), 25 queries .

Powered by 海安天坑软件科技有限公司

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表