1、实验六 循环结构程序设计(一 )掌握 while循环语句的结构、执行过程。 学会确定循环条件和循环体。理解死循环的概念。 实验 要点解析 :该题 目与 实验 四中的 【 例 4-1】 相同。本 题 目用第二种循 环 格式:while循 环 来完成。 while语 句用来 实现 “ 当型 ” 循 环结 构。一般形式 :while(表达式 )循 环 体 语 句;执 行 过 程 :当表达式的 值为 “ 真 ” 时 , 执 行循 环 体 语 句 ,直到表达式的 值为 “ 假 ” ,循 环终 止 ,继续执 行 while的下一条 语 句。一、程序 设计【 例 6-1】 求 1+2+3+4+5的和。 fo
2、r语 句和 while语 句的比 较 :(1)两种 语 句都是先判断表达式的 值 ,表达式 值为 “真 ”才 执行循 环 体 语 句。(2)for语 句一般用来 编 写循 环 次数固定的程序 ,而 while语 句一般用来 编 写循 环 次数不固定的程序。(3)两种循 环 的循 环 体都只能是一条 语 句。while语句执行流程图循 环 体 语 句表达式while的下一条 语 句假真循 环 体 语 句的下一条 语 句假真循 环 体 语 句表达式while的下一条 语 句假程序 流程图sum=sum+ii=i+1i=5 NYint i=1,sum=0开始printf(“%d “,sum)结 束开
3、始结 束#include “stdio.h“main()int i=1,sum=0; /*变量赋初值 */while(i=5) /*循环的终止条件 ,每次进入循环体先判断 */sum+=i; /*等价于: sum=sum+i;*/ i+; /*循环变量增量 */ printf(“i=% d,sum=% dn“,i,sum);源程序 i=6,sum=15运行 结 果 :解析 :与实验四中的 【 例 4-2】 编程思路相同 ,用 while循环编写。举 一反三【 6-1】 求 1-2+3-4+5的和。#include “stdio.h“main() int i=1, sum=0,f=-1;/*变量
4、 f用来存放正负号 ,此数赋值为 -1*/while(i=5) f=-f; /*先将符号处理为第一项需要的正号 */sum=sum+i*f; /*i是正数 ,变量 i值乘以 f,可以控制正负数 */i+; /*i变量的内容增 1*/ printf(“i=% d,sum=% dn“,i,sum); 源程序i=6,sum=3运行 结 果 :【 例 6-2】 输入一个正实数 eps,计算并输出下式的值 ,解析 :(1)编写程序时 ,不知道要计算多少项 ,因此 ,用 while循环来编写 ,不用 for循环。(2)eps代表特别小的数 ,例 ,0.0001。由题中算式可知 ,进行计算的值越来越小 ,当一个值小于变量 eps的值时 ,就不再进行计算。即 ,只要大于或等于变量 eps的值都计算。(3)由题目要求可知 ,分数及它前面的正负号作为一项 ,取绝对值作为循环终止条件。(4)只需定义一个控制分母的变量即可表示分数。(例如程序运行后 ,eps被 输 入 0.0001)。 直到最后一 项 的 绝对值 小于 eps。