首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载
2011中考 | 2011高考 | 2012考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试
MPA考试 | 中科院
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 雅思 | 专四专八 | 口译笔译 | 博思 | GRE GMAT
新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 | 法语 | 德语 | 韩语
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证
华为认证 | Java认证
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格
报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师
人力资源 | 管理咨询师考试 | 秘书资格 | 心理咨询师考试 | 出版专业资格 | 广告师职业水平
驾驶员 | 网络编辑
卫生资格 | 执业医师 | 执业药师 | 执业护士
会计从业资格考试会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师
注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师
质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师
设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师
城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏
您现在的位置: 考试吧(Exam8.com) > 软件水平考试 > 复习资料 > 程序员资料 > 正文

2011年软件水平考试程序员之程序设计知识点13

考试吧整理“2011年软件水平考试程序员之程序设计知识点13”,方便考生备考!
  3.6 循环结构

  循环计算用循环结构来描述。C语言提供三种描述不同循环结构的语句,它们是while语句、do-while语句和for语句。

  1.while语句

  while语句用来描述while型循环结构,它的一般形式为

  while(表达式)

  语句

  while语句的执行过程是:

  (1)计算while之后的表达式的值;

  (2)测试表达式的值,当值为非 0时,转步骤 3;如值为 0,则结束while语句;

  (3)执行while语句的循环体,并转步骤1(从而构成循环)。

  一般来说,为使while语句的执行能正常结束,如控制循环的条件表达式包含有变量,循环体的执行应能更新这些变量的值,使表达式的值会变为0。有时,很难直接写出while后的条件,这时可以简单地写上 1,而在循环体中含有当某条件满足时,执行如 break语句那样的控制转移语句,使控制跳出while循环,即呈以下结构形式:

  while(1){

  ...

  if(表达式)break;

  ...

  }:

  2.do-while语句

  do-while语句用来描述do-while型循环结构,它的一般形式为;

  do

  语句

  while(表达式);

  其中的语句是do-while语句的循环体。do-while语句的执行过程是:

  (1)执行do-while语句的循环体;

  (2)求 while之后的表达式的值;

  (3)测试表达式的值,当值为非0,转步骤1(从而构成循环);如值为0,则结束do-while语句。

  与while语句一样,当循环体由多个语句组成时,必须把它们书写成复合语句。有些用while语句描述的循环计算,也能用do-while语句描述。然而,并非总是如此。两者的重要区别在于:执行循环体时,对作为循环条件的表达式的求值和测试的时间不同。while语句对作为循环条件的表达式求值和测试在执行循环体之前,而do-While语句对作为循环条件的表达式求值和测试在执行循环体之后。对于do-while语句,它的循环体至少被执行一次,而while语句的循环体在作为循环条件的表达式值一开始就为0的情况下,就一次也未被执行。如能保证while语句中的作为循环条件的表达式在第一次被求值后,总是非0,则把该循环条件移至循环体执行之后求值和测试,能起同样的控制作用。在这种情况下,while语句就能改写成如while语句。如 while语句中的作为循环条件的表达式值可能初次求值就为 0时,则它不能简单地改写成do-while语句。另外要特别指出,分号是do-while语句的结束符,不能省略。

  for语句

  for语句是C语言中最灵活、使用最广泛的循环结构语句。如以最一般意义下考虑循环,一个完整的循环应包含对有关变量赋初值部分、控制循环的条件、一个要循环计算的操作、每次循环后对有关变量的修正等四部分组成。拉语句就是从这一般意义下表达循环结构的语

  句。for语句的一般形式为

  for(表达式1;表达式2;表达式3)

  语句

  其中的语句是for语句的循环体。输语句的执行过程是:

  (1)计算表达式1;

  (2)计算表达式 2的值,并测试其值为 0或非 0。若值为非 0,转步骤 3;否则结束 for语句;

  (3)执行循环体;

  (4)计算表达式3;

  (5)转向步骤2。

  for语句的一般形式也可等价地用以下形式的while语句来表达:

  表达式1;

  while(表达式2) {

  语句

  表达式3;

  }

  由for语句的执行过程可知,for语句的表达式1的作用是对控制循环的有关变量赋初值;表达式2是控制循环的条件;表达式3用于修正有关变量;语句是循环体。所以for语句按各部分的功能,可以形象地写成以下形式:

  for(赋初值的表达式;控制循环条件的表达式;修正变量的表达式)

  完成循环计算的语句

  正确使用for语句,需注意以下几种情况:

  (1) for语句的一般形式中,表达式1、表达式2和表达式3都可以省略。如表达式1省略,表示该for语句没有赋初值部分,或前面的程序段已为有关变量赋了初值,或确实没有特别的初值;如表达式2省略,表示循环条件永远为真,可能循环体内有控制转移语句转出缺语句;表达式3省略,表示没有修正部分,对变量的修正已在循环体内一起完成。不管表达式1、表达式2和表达式3省略情况如何,其中两个分号都不能省略。对于三个表达式都省略情况,for语句呈以下形式:

  for(;;)

  语句

  (2)表达式l、表达式2和表达式3都可包含逗号运算符由多个表达式组成。

  4. break语句

  break语句除能用于switch语句外,还常用于循环语句中。执行循环结构中的break语句,控制就从包含它的循环结构中退出。break语句通常与if语句结合,构成一个结束循环的条件。

  5.continue语句

  continue语句只用于循环语句中。通常复杂的循环计算中,循环语句的循环体是一个语句序列,中间会有一个包含continue语句的且语句。当指定的条件成立时,continue语句就被执行,这时continue语句之后的语句就不再执行,控制立即进入下一轮循环。

  6. 语句标号和goto语句

  C程序的语句之前都可插入标识符和冒号,该标识符即为其后语句的标号。如

  strat:X= 0;

  标识符Start就是语句“x=0;”的标号。

  goto语句(goto标号;)是一种无条件转移语句,其意义是将程序的控制转到以所指定的标号命名的语句处。goto语句通常出现在if语句内,实现当某种条件出现时,需要改变正常的顺序执行控制流程。由于goto语句过份的随意使用会给程序的理解带来很大的困难,所以一般强调不使用goto语句来编程。只有当一个多重循环的最内层,当发现某种特别的情况需要结束整个多重循环,这时可用goto语句让程序执行从最内层直接转到外层循环之外。注意,break语句只能跳出包含它的一层循环。

  7.用goto语句构成循环

  在早先非结构化程序设计中,由于语言提供的控制结构的结构性差,常用goto语句构成循环。但在结构化程序中,不再用goto语句构成循环。考生掌握这个知识是要求考生能将goto语句构成的循环改写成结构化控制结构描述的循环。

  相关推荐:

  2011软考程序员考试复习笔试知识点整理汇总

  2011年软考程序员考试模拟试题及答案(上午题)

  2011年软考程序员考试模拟试题及答案(下午题)

文章搜索
软件水平考试栏目导航
版权声明:如果软件水平考试网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本软件水平考试网内容,请注明出处。