文档详情

C语言从入门到精通(实例版)(第2版).doc

发布:2018-05-17约1.89万字共25页下载文档
文本预览下载声明
编写程序时许多问题需要用到循环控制,而循环结构也是结构化程序设计的基本结构之一,熟练掌握循环结构是程序设计的最基本要求。本章主要介绍while循环、do while循环和for循环语句,通常情况下,3种循环语句可以相互转换。 通过阅读本章,您可以: ( 掌握while语句的使用 ( 掌握do while语句的使用 ( 熟练掌握for循环及其变体 ( 了解goto语句 ( 熟练使用break和continue语句并懂得两者之间的区别 4.1 while及do while语句 视频讲解:光盘\TM\lx\4\while及do while语句.exe 通过第3章的学习,了解了程序在运行时通过判断、检验条件做出相应的选择。程序除了可以做出选择外,还必须能够重复,也就是反复执行一段指令,直到满足某个条件为止。这种重复的过程就称为循环,C语言中有3种循环语句:while、do while和for循环语句,首先介绍前两种循环语句。 while语句和do while语句都是C语言中循环结构的一种实现方式。while语句用来实现“当型”循环结构。do while较while语句在执行和判断的顺序上有所不同,下面进行具体讲解。 4.1.1 while语句 while语句的一般形式为: while (表达式) /*while循环头*/ { 语句 /*while循环体*/ } 其语义是:当表达式为非0值时,执行while语句中的内嵌语句。该语句的特点是先判断表达式,后执行语句。其流程如图4.1所示。 图4.1 while循环语句执行流程 【例4.1】 计算整数1累加到100的结果。(实例位置:光盘\TM\sl\4\1) 本实例计算数字1~100之间所有整数的总和,使用循环语句可以将1~100之间的数字逐次进行加运算,直到while的判断条件不满足时为止。 #includestdio.h int main() { int iSum=0; /*定义变量,表示计算总和*/ int i=1; /*定义表示每一个数字的变量i*/ while(i=100) /*使用while循环*/ { iSum=iSum+i; /*进行累加*/ i++; /*增加数字*/ } printf(100以内自然数的总和为:%d\n,iSum); /*将结果输出*/ return 0; } 运行程序,效果如图4.2所示。 本实例使用while语句判断i是否小于等于100,如果条件为真,则执行跟着的语句块中的内容;如果条件为假,则跳过语句块执行后面的内容。i的初值为1,进行累加操作,i的值自增,当i的值增加到101时,不再满足表达式条件,循环操作结束,将结果iSum进行输出。 【例4.2】 while死循环。(实例位置:光盘\TM\sl\4\2) 死循环是指程序无法退出或者无法进入下一次循环。下面的代码是用while语句编写的死循环。 #includestdio.h int main() { while(1) { printf(Good luck!\n); } return 0; } 运行程序,效果如图4.3所示。 ?图4.2 计算整数1累加到100的结果 ? 图4.3 while死循环 本实例就是死循环,运行程序,程序将不断输出“Good luck!”字符串,除非强制关掉程序,否则程序就会不断输出这句话。此现象的原因出在语句while(1),此语句说明表达式永远为真,且没有返回命令,因此会不断运行循环体。 4.1.2 do while语句 do while语句的一般形式为: do { 循环体语句 } while (表达式); 其语义是:先执行一次指定的循环体语句,然后判断表达式,当表达式的值为非0(真)时,返回重新执行循环体语句,如此反复,直到表达式的值为0时停止,此时的循环结束。其特点是:先执行循环体,然后判断循环条件是否成立。其流程图如图4.4所示。 图4.4 do while语句执行流程 【例4.3】 使用do while语句计算整数1~100之间的累加结果。(实例位置:光盘\TM\sl\4\3) 在例4.1中,计算整数1~100之间所有数字的累加方法使用的是while语句,在本实例中使用do while语句实现相同的功能,在程序运行的过程中,虽然两者的结果是相同的,但是要了解其中操作的不同之处。 #includestdio.h int main() {
显示全部
相似文档