网站大量收购闲置独家精品文档,联系QQ:2885784924

[工学]第04章-流程控制语句.ppt

  1. 1、本文档共58页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4.2.2 条件运算符“?:” 4.2.3 switch语句 4.2.3 switch语句 4.3 循环结构程序设计 4.3.1 while 语句 4.3.2 do-while 语句 程序设计中经常会遇到在某种条件下重复执行某些操作的情况,这需要用循环结构来完成,在C++中通过循环语句实现。C++提供了三种循环语句形式,分别是:while语句、do…while语句和for语句。 while语句也称为当循环。 语句格式为: while (表达式) 循环体语句; 图3.1 while语句的执行流程图 求表达式 的值 执行循环体 语句 表达式的 值为真? 是 否 while语句的执行过程是,先计算表达式的值,当值为真(或非0),则执行循环体,然后再计算表达式的值,并重复以上过程。 4.3.1 while 语句 【例3.8】 求1+2+3+4的值。 分析:求累加和实际上是重复一个循环,在每个循环中都是将下一个数与累加和相加。程序如下: #include iostream.h void main(){ int i=1,sum=0; //循环初始条件 while(i=4){ sum+=i; i++; //修改循环条件 } coutsum=sumendl; } 输出结果 i++ sum+=i i=4 int i=1,sum=0; 5 4 3 2 i=1 10 6 3 1 Sum=0 1 2 3 4 do-while语句称为直到循环,格式为: do 循环体语句 while(表达式) 否 是 表达式的 值为真? 执行循环体语句 求表达式的值 图3.2 do-while语句的执行流程图 do循环体语句 while(表达式)的执行过程是,先执行循环体语句,然后计算表达式的值,若其值为真(非0),则重复上述过程,直到表达式的值为假(或为0)时结束循环。 【例4.9】 用迭代法求的近似值。求 平方根的迭代公式为:要求前后两个迭代根之差小于10-5。 分析:这是递推算法的一个应用。从键盘读入一个正数赋给a,人为估计一个值作为迭代初值x0,假定取a/2,根据迭代公式求出x1,若|x1-x0|10-5,则x1就是所求的平方根近似值;否则,将x1赋给x0,再用公式迭代出新的x1。重复以上过程直到|x1-x0|10-5为止。 输出a的平方根(x1的值) fabs(x1-x0) =1e-5 x1=(x0+a/x0)/2; x0=x1; x1=a/2 从键盘读入一个正数赋给a 程序如下: #includeiostream.h #includemath.h void main( ){ float x0,x1,a; cout输入一个正数:endl; cina; if (a0) couta不能开平方!endl; else { //有实数解的情况 x1=a/2; //x1用作保存估计值 do { x0=x1; x1=(x0+a/x0)/2; } while (fabs(x1-x0) =1e-5); cout a的平方根为:x1endl; } } 【例】 输入一段文本,统计文本的行数、单词数及字符数。假定单词之间以空格或跳格或换行符间隔,且文本开始没有空行。 分析: ①逐个读入文本中的字符,直到读到一个输入结束符EOF为止。 在读入过程中, ② 每读到一个非间隔符,ch=ch+1, ③ 每读到一个′\n′,line=line+1; ④ 另设一个变量isword,读到字符时isword=1,读到间隔符时isword=0,如果读到一个字符而此时isword值为0时,则word=word+1。 Hello/nstart exercise/ngood work/nctrl+z Hello/n start exercise/ngood work/nctrl+z 假 isword=0 假 假 ch!=EOF nch++,isword=1 nword++ 真 真 nline++;isword=1; 真 ch=cin.get( ); 变量说明:nline=0,nword=0,nch=0,ch ch==‘\n’ ch!= ch!=\tch!=\n !isword #includeiostream.h void main() { char ch; int nline=0, nword=0, nch=0; int isword=0;

您可能关注的文档

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档