C语言程序设计-第5章-循环结构程序设计(2011-2012第2学期).ppt

C语言程序设计-第5章-循环结构程序设计(2011-2012第2学期).ppt

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课程提要 第一章 绪论 第二章 C语言基础 第三章 结构化程序设计 第四章 选择结构 第五章 循环结构程序设计 第六章 函数 第七章 编译预处理 第八章 数组 第九章 结构体、共用体和枚举类型 第十章 指针 第5章 循环结构程序设计 5.1 while语句 5.2 do…while语句(*) 5.3 for语句 5.4 break语句和continue语句(*) 5.5 循环的嵌套 5.1 while语句 语法: while (表达式) 语句 语义:先计算表达式的值,如果其值为非0(“真”),则执行循环体;否则,退出循环,执行该循环结构后的下一条语句。每当执行完一次循环体以后,再继续计算表达式的值,如果值为非0,则再次执行循环体。如此反复,直到计算出的表达式值为0时,退出循环。 注意: (1) 当循环体由多条语句构成时,必须加大括号把循环体当做语句块。 (2) while 语句是先判断,后执行。如果循环的条件一开始就不成立, 则循环体一次都不执行。 (3) 循环体中必须有引起循环条件值发生改变的语句,否则循环不能终 止,将形成无限循环(或死循环)。 表达式 语句 真 假 5.1 while语句 例 5.1.1 求1-100中各偶数之和。 #include<stdio.h> void main() { int i, sum=0; i=2; while( i<=100) { sum=sum+i; i=i+2; } //块语句作为循环体 printf("sum=%d\n“,sum); } 5.1 while语句 例 5.1.2 打印出用户输入的每个正数的平方根(用0结束循环的执行)。 #include<math.h> #include<stdio.h> void main() { float x; printf(“Input a positive number:”); scanf(“%f”,&x); //输入第一个正数,使循环控制变量x有确定值 while(x>0) { printf(“%f\t%f\n”,x,sqrt(x)); printf(“Input another positive number(or 0 to quit):”); scanf(“%f”,&x); } } 5.1 while语句 例 5.1.3 用π/4≈1-1/3+1/5-1/7+…公式求π的近似值,直到最后一项的 绝对值小于10 -6为止。 #include <stdio.h> #include <math.h> main ( ) { int s=1; float n=1,t=1,pi,sum=0.0; // t是循环控制变量。执行while语句之前,t必须有确 定的值;而sum、n、t也必须有初值 while ( fabs(t) >= 1e-6 ) // 某一项t绝对值小于10-6时退出循环 { sum=sum+t; n=n+2; // 修改分母 s=-s; // 符号翻转 t=s/n; // 求出新的一项 } pi=sum*4 ; printf("pi=%f\n",pi); } 5.1 while语句 例 5.1.4 输入两个正整数m和n,求其最大公约数。 解:可采用欧几里德的辗转相除法(算法): (1) 对于已知两个数m和n,使得m>n; (2) M被n除的余数为r; (3) 若余数r等于0,则转到步骤(5),否则继续进行下一步; (4) 将除数n作为新的被除数m,把余数r作为新的除数n,求 出新的余数r,转到步骤(3); (5) 结束,这时n的值即为最大公约数。 5.1 while语句 #include<stdio.h> void main() { int m,n,t,r; printf(“请输入m,n:”); scanf(“%d,%d”,&m,&n); if (m<n) { t=m;m=n;n=t;} // 将大

文档评论(0)

学习让人进步 + 关注
实名认证
内容提供者

活到老,学到老!知识无价!

1亿VIP精品文档

相关文档