欢迎来到天天文库
浏览记录
ID:33509062
大小:1.73 MB
页数:17页
时间:2019-02-26
《c程序设计语言_5a》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、介绍[例]打印如下信息60000份:北京师范大学软件工作室陆晓曦C第5章程email:lu_xiaoxi@me.com序设循环结构程序设计计利用已学习的编程知识(顺序结构、选择结构),只能复制60000次如下程序段:printf(“北京师范大学软件工作室”);printf(“陆晓曦”);2011printf(“email:lu_xiaoxi@me.com”);-3-3-30-30或者执行60000次执行程序。2介绍介绍[例]编程求出1--60000之间的所有素数上述例子都需要重复执行一个程
2、序段,若重复的次首先,要给出判别一个整数n为素数的程序段:数n较小,可以把该程序段重复写n遍,但当n很大时,这种做法显然不合适。C用2--(n-1)之间的每个数去除C程程序n,若没有整除发生,则n为素序解决这类问题,需要C语言的循环语句:设数,否则为合数。设计计while语句、do-while语句、for语句。然后,对2~60000之间的每个整数重复如下程序段为了使循环语句使用起来更简洁、方便,C语言还提供了3种辅助语句:用2--(n-1)之间的每个数去除2011n,若没有整除发生,则n为素2011b
3、reak语句、continue语句、goto语句。-3-3-3-3-30-30-30-30数,否则为合数。34内容while语句1.while语句格式:while(表达式b)语句s;流程图:C2.do-while语句C程程序3.for语句序假设设表达式b计计4.goto语句真循环体s5.break语句和continue语句20116.循环结构程序设计举例2011-3-3-3-3-30-30-30-3056C程序设计1while语句while语句(3)执行特点:(1)成分解释:先判断后执行;表达式b是逻
4、辑表达式,称为循环控制条件;CC该语句为“当型循环语句”。程语句s是合法的C语句,称为循环体;程序序设设(4)避免死循环计计(2)执行方式若b的值总为“真”,则循环体s将被无休止地执行。这种情况称为“死循环”。“死循环”使后续程序b的值为真时,执行循环体s;段得不到执行。b的值为假时,不执行循环体s;结束循环语句;20112011-3-3-3-3避免“死循环”的方法,是在循环体中设置改变或-30-30-30-30影响表达式b值的语句。78while语句while语句[例1]求1*1+2*2+3*3+.
5、..n*n(n任意给定)注意事项:#includevoidmain()(1)循环体包含多条语句时,应使用复合语句。否则CC程{inti,n;floatsum;程只把while后的第一条语句作为循环体。例如,序序设scanf("%d",&n);设计计while(i<=n)i=1;sum=0;sum=sum+(float)i*i;i++;while(i<=n)上面while语句的循环体为{sum=sum+(float)i*i;i++;}20112011sum=sum+(float)i*i
6、;printf(”1*1+2*2+3*3+...+”);-3-3-3-3-30-30-30-30而不是printf(”%d*%d=%0.0f”,n,n,sum);sum=sum+(float)i*i;i++;9}10while语句do-while语句(2)循环体中应有使循环控制条件成“假”的语句。格式:do语句s;while(表达式b);语句“i++;”就是这样的语句。流程图:CC程如无此语句,出现死循环。程序序设设循环体s计计(3)sum=sum+(float)i*i;中的类型转换很重要。当i很大时
7、,i*i是整数且会超出整数的范围,如果不实行类型的强制转换,就会产生溢出;真表达式b(float)i*i使运算结果是实数。20112011-3-3-3-3假-30-30-30-301112C程序设计2do-while语句do-while语句(1)成分解释:(3)执行特点:表达式b是逻辑表达式,称为循环控制条件;先执行后判断;该语句是“当型循环语句”。C语句s是合法的C语句,称为循环体;C程程(4)避免死循环:序序设设(2)执行方式:若表达式b的值总为“真”,那么循环体s将被无计计休止地执行,出现“死循
8、环”,导致后续程序段得先执行循环体s一次,然后计算b的值并判断。不到执行。当b的值为真时,执行循环体s;避免“死循环”的方法是在循环体中出现能改变当b的值为假时,不执行循环体s;结束循环。20112011表达式b值的语句。-3-3-3-3-30-30-30-30(5)循环体有多条语句时,应使用复合语句。1314do-while语句do-while语句[例2]求1*1+2*2+3*3+...n*n(n任意给定)do-while语句和while语句的比较:#
此文档下载收益归作者所有