文档详情

自考计算机基础与程序设计第四章条件语句与选择结构程序设计(附本章三年内自考真题及答案)分析报告.ppt

发布:2016-05-21约1.04万字共44页下载文档
文本预览下载声明
第4章 选择结构程序设计 4.1 选择结构程序设计 4.2 if语句的基本形式和N-S图 4.3 switch语句 4.4 选择结构程序设计综合应用 本章要点 选择结构的特点 选择结构程序设计的一般方法 if语句和switch语句的使用方法 4.1 选择结构概述 结构化程序设计中的选择结构,与日常生活中的“选择结构”一样,也是根据一个判断条件来决定执行哪一个分支,选择某个分支执行后其他分支不再执行,选择结构的特点是根据判断条件,有选择地执行其中一个分支,要且只要执行其中一个分支。 对于选择结构程序设计,首先要确定选择的条件,然后找出判断条件有多少种可能,即该条件有多少种情况(值),最后再确定每种可能情况所要进行的处理。选择结构程序就是根据条件,选择程序若干个流向中的一个,因此也叫分支结构。 C语言选择结构中的“条件”实际上是一个表达式,它可以是算术表达式、关系表达式、逻辑表达式等,所有可以求值的表达式都是允许的。程序执行的流向是根据表达式的值是0还是非0来决定的。非0代表条件成立,0代表条件不成立,所以条件只有两个状态,程序执行的流向也只可能有两种选择。 4.2 if语句 在C语言中,提供了if语句和switch语句来实现选择结构程序设计。 if语句可以构成分支结构。它根据给定的条件进行判断,以决定执行某个分支程序段。if语句有三种书写形式。同时,在一个if语句中还可以包含另一个if语句,称为if语句的嵌套。 4.2.1 单分支选择if语句 单分支选择if语句的一般格式: if(条件表达式) 语句 说明: (1) 其中()中的条件表达式一般为逻辑表达式或关系表达式,但也可以是算术表达式、赋值表达式或字符表达式,甚至可以是一个变量,这正是C语言灵活性的具体表现。需要特别注意的是,条件表达式外边的括号不能省。 (2)条件表达式后面的语句,可以是简单语句,也可以是复合语句,但只能是一个语句。如果包含多个简单语句,则一定要用大括号括起来组成复合语句,否则得不到预期值。 比较以下两段程序的输出结果(见表4-1)。 (3) if语句的简单形式只能处理一种可能情况(不满足条件时不处理)。 (4) 执行过程:首先计算条件表达式的值,如果条件表达式的值为真(非零),则执行其后的语句;否则不执行其后的语句。执行过程的N-S图4.1所示。 【例4-1】 输入三角形的三边,如果构成三角形则求三角形的面积。 三角形的判断条件是任意两边之和应大于第三边。已知三角形的三边长求面积的计算公式为: 分析: 任意两边之和大于第三边,有三种组合,而且这三种组合必须同时成立。所以,判断三边长是否构成三角形可用以下判断条件: a+bcb+caa+cb 程序代码: #includemath.h /*求平方根函数sqrt包含在math.h头文件中*/ main() { float a,b,c,area,s; scanf(%f,%f,%f,a,b,c); if(a+bcb+caa+cb) /*任意两边之和大于第三边*/ { /*包含多个简单语句时,一定要加{}构成复语句*/ s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(The area=%.2f,area); } } 4.2.2 双分支选择if语句 双分支选择if语句的一般格式: if(条件表达式) 语句1; else 语句2; 说明: (1)其中,条件表达式和语句的要求,与if语句简单形式的条件表达式和语句的要求相同。 (2)if语句的标准形式能处理有两种可能的情况,它与if语句简单形式相比,多了一个else(否则)部分,这部分用来处理条件不成立时所要进行的操作。 (3)执行过程:先计算后面圆括号中条件表达式的值,若结果为真,执行语句1而不执行语句2,否则执行语句2而不执行语句1,即在此类型结构中,只执行语句1和语句2两者中的一个。执行过程的N-S图如图4.2所示。 【例4-2】 输入三角形的三边,如果构成三角形则求三角形的面积,否则提示数据错误。 #includemath.h main() { float a,b,c,area,s; scanf(%f%f%f,a,b,c); if(a+bcb+caa+cb) { s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c));
显示全部
相似文档