ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:137.66KB ,
资源ID:6859857      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6859857.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第四章 分支选择结构.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第四章 分支选择结构.docx

1、第四章 分支选择结构第四章 分支选择结构4.1 关系运算符和关系表达式一关系运算符及其优先次序C语言提供6种关系运算符(两个级别): , , = 优先级高= , != 优先级低关系运算符与其它运算符的关系:例: ca+b 相当于 c(a+b)ab!=c 相当于 (ab)!=ca=bc 相当于 a=(bc 相当于 a=(bc)二关系表达式用关系运算符将两个表达式连接起来的式子,称为关系表达式。关系表达式的值是一个逻辑值(真或假),C语言没有逻辑型数据,以1表示“真”,0表示“假”。例: a=3, b=2, c=1则: ab 取值为1 a=b 取值为0 f=abc f的值为0 (结合性:从左到右)

2、4.2 逻辑运算符和逻辑表达式一逻辑运算符及其优先次序C语言提供三种逻辑运算符:逻辑运算的真值表:ab!a!ba&ba|b真真假假真真真假假真假真假真真假假真假假真真假假逻辑运算符与其它运算符的关系:二逻辑表达式用逻辑运算符将关系表达式或逻辑量连接起来的式子就是逻辑表达式。逻辑表达式取逻辑值。C语言判断一个非0的值为“真”,以0为“假”,这个值可以是任何类型的数据(整型,字符型,实型或指针型等)。如: 53&2|8b) & (n=0)因ab为0,则m=ab为0,则表达式为0;n=0不执行,因此表达式求解后:a=1 , b=2, m=0, n=3。例:判别某一年year是否闰年。闰年的条件是符合

3、下面二者之一:1 被4整除,但不被100整除。2 能被400整除。因此判断闰年的表达式为:(year % 4 =0 & year %100 !=0) | year % 400 =04.3 if语句一if语句的二种形式:1 if (表达式) 语句如: t=x;if (ty) t=x; else t=y;例:输入一个百分制的成绩,输出其等级。main() int mark; scanf(“%d”,&mark); if (mark=90&mark=80&mark=70&mark=60&mark=0&markc & a+cb & b+ca) s=(a+b+c)/2; area=sqrt(s*(s-a)

4、*(s-b)*(s-c); printf(“area=%fn”,area); else printf(“n这不是一个三角形。n”); 例1:输入两个实数,按从小到大排序输出。main() float a,b,t; scanf(“%f %f”,&a,&b); if (ab) t=a; a=b; b=t; printf(“%f %f”,a,b); 例2:输入三个实数,按从小到大排序输出。main() float a,b,c,t; scanf(“%f %f %f”,&a,&b,&c); if (ab) t=a; a=b; b=t;if (ac) t=a; a=c; c=t; /*先求出三个数中最小的

5、数放在a中。*/if (bc) t=b; b=c; c=t; printf(“%f %f”,a,b,c);二if语句的嵌套在if语句中又包含一个或多个if语句称为if语句的嵌套。一般形式:if ( ) if ( ) 语句1 else语句2else if ( ) 语句3 else语句4注意:if与else的配对关系: if ( ) if ( ) 语句1 else语句2 此else应与内层if配对,若要与外层if配对,应用如下方式:if ( ) if ( ) 语句1 else语句2观察如下几个程序段: 求函数 的值。三条件运算符一般形式: 表达式1?表达式2:表达式3流程图:条件运算符是C语言中唯

6、一的一个三目运算符。如: if (ab) max=a; else max=b;说明:1优先级:如: ab ? a : b+1 相当于(ab)? a :(b+1)2结合方向: 从右到左如: ab ? a:cd ? c : d 相当于 ab ? a:(cd ? c : d)3表达式1的类型可与表达式2和表达式3的类型不同。表达式2的类型也可与表达式3的类型不同,此时条件表达式的值的类型为二者中较高的类型。如: xy ? 1 : 1.5 若xy则取值1.0。例:输入一个字符,判别它是否大写字母,若是,将它转换成小写字母;否则不转换。最后输出得到的字符。main() char ch; scanf(“%

7、c”,&ch); ch=(ch=A & ch=Z) ? (ch+32) : ch; printf(“%cn”,ch);4.4 switch语句if语句是两个分支选择语句,switch语句是多分支选择语句。一般形式:switch () case 常量表达式1:语句1 case 常量表达式2:语句2 case 常量表达式n:语句n default :语句n+1例:输入一个百分制的成绩,输出其等级。main() int mark,tag; scanf(“%d”,&mark); tag=mark/10; switch(tag) case 10: case 9: printf(“n优”); break;

8、 case 8: printf(“n良”); break; case 7: printf(“n中”); break; case 6: printf(“n及格”); break; case 5: case 4:case 3:case 2:case 1: case 0: printf(“n不及格”); break; default: printf(“n输入错误”);说明:1switch后面的表达式一般为整型、字符型或枚举型(C标准只能这三种类型),ANSI标准允许任何类型的表达式。2执行过程:先计算switch后面表达式的值,再与case中的常量进行比较:若与某个case中常量相等,则执行其后的语

9、句,以及此后的所有语句;若与所有case中常量都不相等,则执行default之后的所有语句。break语句:中止switch语句的执行。3每个case的常量表达式值必须互不相同。4各个case的顺序可以是任意的。每个case后面可以有多个语句。default语句也可放在前面。5多个case可以共用一组执行语句。4.5 程序举例例:求ax2+bx+c=0方程的解。有以下几种可能性:1a=0 不是二次方程;2b2-4ac=0 有两个相等的实根=-b/(2*a);3b2-4ac0 有两个不等的实根:4b2-4ac0 有两个共轭复根:#include “math.h”main() float a,b,

10、c,disc,x1,x2,p,q; scanf(“%f%f%f”,&a,&b,&c); if (fabs(a)=1e-6) printf(“不是二次方程。n”); else disc=b*b-4*a*c; if (fabs(disc)1e-6) x1=(-b+sqrt(disc)/(2*a);x2=(-b-sqrt(disc)/(2*a);printf(“x1=%f,x2=%fn”,x1,x2); else p=-b/(2*a); q=sqrt(-disc)/(2*a); printf(“两个复根:n”); printf(“%f+%fin”,p,q);printf(“%f-%fin”,p,q);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1