c语言 第5章选择结构程序设计.ppt
上传人:qw****27 上传时间:2024-09-12 格式:PPT 页数:33 大小:1.2MB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

c语言 第5章选择结构程序设计.ppt

c语言第5章选择结构程序设计.ppt

预览

免费试读已结束,剩余 23 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第5章选择结构程序设计引例计算函数值关系运算符和表达式关系运算:对两个量进行“比较运算”关系运算符种类:<<===>=>!=结合方向:自左向右优先级别:关系运算注意:例注意区分“=”与“==”inta=0,b=1;if(a==b)printf(“aequaltob”);elseprintf(“anotequaltob”);a例a=4;b=5;!aa&&ba||b!a||b4&&0||25>3&&2||8<4-!0‘c’&&‘d’短路特性:逻辑表达式求解时,并非所有的逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行该运算符如:判断某年year是否为闰年(闰年:能被4整除,但不能被100整除;或能被400整除)选择结构程序设计if语句(条件选择语句)if语句的三种形式形式一:条件执行格式:if(expression)A执行过程:形式三:多重分支格式:如:if(a==b&&x==y)printf(“a=b,x=y”);if(3)printf(“OK”);if(‘a’)printf(“%d”,’a’);#include<stdio.h>voidmain(){floatx,y;printf("Enterx:");scanf("%f",&x);if(x==0.)y=1;elsey=(x*5+1)/x;printf("\nx=%4.1f\ty=%4.1f\n”,x,y);}#include<stdio.h>voidmain(){inta;printf(“\tinputanumber:");scanf("%d",&a);if(a%2==0)printf(“\n\t%diseven\n“,a);elseprintf(“\n\t%disodd\n“,a);}将3个整数按从大到小的顺序排列#include<stdio.h>voidmain(){inta,b,c,t;scanf("%a%b%c",&a,&b,&c);if(a<b){t=a;a=b;b=t;}if(a<c){t=a;a=c;c=t;}例:设平面上一点M,其坐标为(x,y),若M落在圆心在坐标原点的单位圆上,则置key=1,落在圆外置key=2,落在圆内置key=0if语句嵌套:例if~else配对原则:缺省{}时,else总是和它上面离它最近的未配对的if配对例:if(a==b)if(b==c)printf(“a==b==c”);elseprintf(“a!=b”);例考虑下面程序输出结果:main(){intx=100,a=10,b=20;intv1=5,v2=0;if(a<b)if(b!=15)if(!v1)x=1;elseif(v2)x=10;x=-1;printf(“%d”,x);}条件运算符与表达式一般形式:expr1?expr2:expr3执行过程例:任意输入一个字符,若是大写字母将其转换成小写字母switch语句(开关分支语句)亦称多分支选择语句。它比用嵌套的if语句实现多路分支问题,结构清晰、易读。一般形式:说明:E1,E2,…En是常量表达式,且值必须互不相同语句标号作用,必须用break跳出case后可包含多个可执行语句,且不必加{}switch可嵌套多个case可共用一组执行语句例switch(score){case5:printf(“Verygood!”);case4:printf(“Good!”);case3:printf(“Pass!”);case2:printf(“Fail!”);default:printf(“dataerror!”);}例voidmain(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;}case2:a++;b++;break;case3:a++;b++;}printf(“\na=%d,b=%d”,a,b);}#include<stdio.h>main(){intc;printf("Entermornorhorother:");c=getchar();switch(c){case'm':printf("\nGoodmorning!\n");break;case'n':printf("\nGoodnight!\n");break;case'h':printf("\nHello!\n");break;default:printf("\n?