资源描述:
《C语言程序设计 教学课件 作者 王玉 主编第4章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4章流程控制本章主要内容4.1复合语句4.2条件语句4.3开关语句4.4循环语句4.5循环语句的嵌套4.6间断语句与继续语句4.7转移语句与返回语句4.8程序举例4.1复合语句所谓顺序结构,就是将一个复杂的运算分解成若干依次执行的步骤,这些步骤或再分解,或用一个简单语句表达,由它们组合成的一个不可分的、顺序执行的语句序列整体。顺序语句由复合语句构成。格式:{语句序列}功能:将花括号内的一系列语句(称子语句)组合在一起,构成一个顺序结构,在语法上成为一个语句。说明:①复合语句运行时各子语句依次顺序执行。②复合语句在语法上等价
2、于一个简单语句。③复合语句中最后的大括号不用分号,但复合语句中最后一条语句后的分号不能忽略。4.2条件语句C语言提供了三种格式的条件语句:格式1:if(表达式)语句;功能:首先计算表达式的值,然后判断表达式的值是否为真(非0),若为真,则执行语句。其执行过程如图4.1所示。图4.1if语句图解格式2:if(表达式)语句1;else语句2;功能:首先计算表达式的值,然后判断表达式的值是否为真(非0),若为真,则执行语句1,否则执行语句2。其执行过程如图4.2所示。图4.2if-else语句图解格式3:采用if-else-if语
3、句,其一般形式为:if(表达式1)语句1;elseif(表达式2)语句2;elseif(表达式3)语句3;…elseif(表达式m)语句m;else语句n;其语义是:依次判断表达式的值,当出现某个值为真时,则执行其对应的语句。然后跳到整个if语句之外继续执行程序。如果所有的表达式均为假,则执行语句n。然后继续执行后续程序。在使用if语句中还应注意以下问题:①在三种形式的if语句中,在if关键字之后均为表达式。该表达式通常是逻辑表达式或关系表达式,但也可以是其他表达式,如赋值表达式等,甚至也可以是一个变量。②在if语句中,条件
4、判断表达式必须用括号括起来,在语句之后必须加分号。③在if语句的三种形式中,所有的语句应为单个语句,如果要想在满足条件时执行一组(多个)语句,则必须把这一组语句用{}括起来组成一个复合语句。但要注意的是在}之后不能再加分号。4.3开关语句在C语言中,可直接使用开关语句来实现多种情况的选择结构。格式:switch(表达式){case常量表达式1:语句1;case常量表达式2:语句2;…case常量表达式n:语句n;default:语句n+1;}其中的default:和语句n+1可以同时省略。执行过程:首先计算表达式的值,然后用
5、此值来查找各个case后面的常量表达式,直到找到一个等于表达式值的常量表达式,则转向该case后面的语句去执行;若表达式不等于任何case后面的常量表达式的值,则转向default后面的语句去执行;若没有default部分,则将不执行switch语句中的任何语句,而直接执行switch后面的语句。说明:①switch后面的表达式,可以是整型或字符型,也可是枚举类型。②case后的表达式只能是常量组成的表达式,且表达式的值必须互不相同。③case的次序不影响执行结果,一般情况下,尽量将使用几率大的case放在前面。④在执行完一
6、个case语句后,程序流程转到下一个case语句开始执行,直到整个switch语句结束。若要执行完一个case语句后,转到switch后的语句去执行,则要在该case语句的最后加上break语句。4.4循环语句4.4.1while语句4.4.2do-while语句4.4.3for语句4.4.1while语句格式:while(表达式)循环体语句其执行过程如图4.5所示。功能:先计算表达式,当值为非0时,重复执行指定的子语句;当值为0时,退出循环。特点:先判断表达式,后执行语句,即在“顶部”测试循环条件。当表达式一开始即为0时,
7、则语句一次也不执行。图4.5while语句执行图解注意:①循环体为多个语句时,必须用花括号将它们构成复合语句;②循环体中应有语句不断地修改循环控制条件,最终能使循环趋于结束。4.4.2do-while语句格式:do循环体语句;while(表达式);其执行过程如图4.6所示。功能:先执行循环体语句,再测试表达式,当值为非0时,重复执行指定的循环体语句;直到值为0时,退出循环。特点:先执行语句,后判断表达式,即在“底部”测试循环条件。即使表达式一开始就为0时,其循环体语句至少也要执行一次。图4.6do-while语句执行图解4.
8、4.3for语句格式:for([表达式1];[表达式2];[表达式3])循环体语句;执行过程如图4.7所示。图4.7for语句执行图解功能:先计算表达式1给循环控制变量赋初值,再测试表达式2是否满足循环条件:条件为真,执行循环体语句,进行表达式3的计算,它改变表达式2的参量,再返回测试表达