C语言 第03章 分支结构
- 格式:ppt
- 大小:359.50 KB
- 文档页数:36
第3章 分支结构程序设计(选择结构)1、掌握if 、if-else 、if 的嵌套语句的语法结构及编程语句的语法结构及编程 123.2.1 单分支if 语句的使用学习目标:1、理解选择结构的概念和特点;2、掌握单分支if 语句的语法结构、执行过程和基本用法,学会正确书写if 语句; 4、能正确阅读if 语句程序,会使用if 语句编写、调试并运行程序。
课前准备:预习P30-32(预习后,将学案上知识点在课本上做记号,并完成相应预习题) 课时分配:2课时 活动课堂活动一、发现问题(目标——了解分支结构的意义)实例:从键盘上输入一个数,求这个数的平方根。
算法:发现问题:活动二、解决问题(目标——掌握分支结构) 思考:从键盘输入一个数,若为正数和0则 求其平方根,否则不予处理。
算法:活动三、预习交流(1 ·语句中a>b ·if 每行的结尾,分支中各语句结尾均有 (符号),但 后没有。
·在(2)(3)两语句段中的不同处画上横线,语句(2)中的c=a+b; (属于/不属于)if 分支。
活动五:观察思考(目标——掌握if 的执行流程)1、观察下列程序的执行,口述程序的执行过程,画出程序的流程图: 例1:#include <math.h>#include <stdio.h>main(){float x,y;clrscr();scanf("%f",&x);if (x>=0){y=sqrt(x);printf("%.2f",y);}}流程图:4、说明:例:表达式 -3+‘d’为________表达式,值为______,作条件判断结果为___________ 表达式 a=0 为__________表达式,值为_______,作条件判断结果为__________ 表达式 a=5 为__________表达式,值为________,作条件判断结果为_________ 表达式a>4为____________表达式,若a=5 则结果为_________表达式(a>0)&&(a%2==0)为________表达式,若结果为5 则结果为__________活动六、尝试学习(目标—if语句的初步应用)编程:输入一个学生成绩score,如果成绩大于60,则显示pass,否则不显示程序:流程图:活动七、合作探究、拓展应用(目标—if语句的应用)1、阅读下列程序,写出运行结果,画出程序的流程图:main() Array {int a,b;scanf("%d%d",&a,&b);if (a<b) a=b;printf("%d",a);}执行:·若输入4 5,则输出:________________若输入5 4,则输出:________________·程序的功能是:______________________。
3.3练习与习题参考答案3.3.1练习参考答案3-1 例3-4中使用else-if 语句求解多分段函数,为了检查else-if 语句的三个分支是否正确,已经设计了三组测试用例,请问还需要增加测试用例吗?为什么?如果要增加,请给出具体的测试用例并运行程序。
解答:最好再增加两组测试用例,因为尚未对分段函数参数的边界值进行测试。
可再给出x=0和x=15时的两种情况。
3-2 计算符号函数的值:输入一个整数x ,计算并输出符号函数 sign(x) 的值。
试编写相应程序⎪ ⎩⎪ ⎨ ⎧ >=<−==010001)(x x x x sign y ,,,解答:#include<stdio.h>int main (void){int x, y;scanf ("%d", &x);if (x > 0) y = 1;else if (x == 0) y = 0;else y = -1;printf ("sign(%d) = %d\n", x, y);return 0;}3-3统计学生平均成绩与及格人数:输入一个正整数n,再输入n 个学生的成绩,计算平均成绩,并统计所有及格学生的人数。
试编写相应程序。
解答:#include <stdio.h>int main (void){int count, grade, i, n;double average, sum;scanf ("%d", &n);count = 0;sum = 0;for (i = 1; i <= n; i++){scanf ("%d", &grade);sum = sum + grade;if (grade >= 60) {count++;}}if (n > 0) {average = sum / n;}else{average = 0;}printf ("average = %.1f\n", average);printf ("count = %d\n", count);return 0;}3-4统计字符:输入10个字符,统计其中英文字母、空格或回车、数字字符和其他字符的个数。
c语言分支结构C语言分支结构引言C语言是一种广泛使用的编程语言,具有高效、灵活和可移植性等特点。
在C语言中,分支结构是一种重要的程序控制结构,它可以根据不同的条件执行不同的代码块,从而实现程序的灵活控制。
本文将介绍C语言中的分支结构及其使用方法。
一、if语句if语句是最基本的分支结构之一,在C语言中用于根据某个条件来判断是否执行某段代码。
if语句的基本格式如下:if(条件表达式){//执行代码块1}else{//执行代码块2}其中,条件表达式为一个逻辑表达式,如果它的值为真,则执行代码块1;否则执行代码块2。
需要注意的是,else子句可以省略,这时候如果条件表达式为假,则不执行任何操作。
二、switch语句switch语句也是一种常用的分支结构,在C语言中用于根据不同情况来选择不同操作。
switch语句的基本格式如下:switch(变量表达式){case 常量表达式1://执行代码块1break;case 常量表达式2://执行代码块2break;default://执行代码块3}其中,变量表达式为一个整型表达式,它的值会与各个常量表达式进行比较,如果匹配则执行对应的代码块。
需要注意的是,每个case子句后面必须加上break语句,否则会继续执行下一个case子句中的代码。
default子句可以省略,这时候如果没有任何匹配,则执行代码块3。
三、嵌套分支结构在C语言中,可以使用嵌套分支结构来实现更加复杂的程序控制。
例如:if(条件表达式1){if(条件表达式2){//执行代码块1}else{//执行代码块2}}else{if(条件表达式3){//执行代码块3}else{//执行代码块4}}在上述例子中,首先判断条件表达式1是否为真;如果是,则进一步判断条件表达式2是否为真;如果是,则执行代码块1;否则执行代码块2。
如果条件表达式1为假,则进一步判断条件表达式3是否为真;如果是,则执行代码块3;否则执行代码块4。