计算机技术基础C第七讲.ppt_第1页
计算机技术基础C第七讲.ppt_第2页
计算机技术基础C第七讲.ppt_第3页
计算机技术基础C第七讲.ppt_第4页
计算机技术基础C第七讲.ppt_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、引入,引入:上节讲了当一元二次方程=0的求解, 若 0时应如何处理? 求 ax2+bx+c=0的根。,(设 b2-4ac0),第5章 逻辑运算和 选择结构程序设计,5.1 关系运算 5.2 逻辑运算 5.3 if 语句 * 5.4 swith(多分支选择)语句 *,本章重点:1。逻辑运算符与逻辑表达式。 2。选择程序设计的基本语句与应用这些语句编制选择结构程序。,5.1关系运算,关系运算:由关系运算符连接起来的式子(比较运算). 如:a=3. 一、关系运算符?(6个) = =3; a=b 1、关系表达式的值 逻辑值“真”(是)“假”(不是)。 若a=5, a=3 若a=2, a=3 C语言中没

2、有逻辑型数据 以“1”代表真,以“0”代表假。 注意:判断一个量是否为“真”时 以0代表“假”,以非0代表真。,值为“真”,值为“假”,5.1关系运算,三、优先级,C语言的6种关系运算符: (大于) = (大于或等于) = = (等于) ! = (不等于),优先级相同(高),优先级相同(低),低 高 赋值运算 关系运算 算术运算,关系表达式 等效于 结果,ca+b,c(a+b),ab!=c,(ab)!=c,a=bc,a=(bc),a=bc,a=(bc),举例说明,假如: int a,b,c,d; a=b=4; c=1;,0,1,0,1,第5章 逻辑运算和 选择结构程序设计,5.1 关系运算 5

3、.2 逻辑运算 5.3 if 语句 * 5.4 swith(多分支选择)语句 *,一、逻辑运算符三种 a=b=4; x=y=c=1;,0,1,0,0,几个题目,若a=8, !a=? 若a=5,b=9,!a 说明:表达式一般为关系表达式或逻辑表达式(后面讲),表达式值非0,则为真,0为假。,假(0),真(非0),条件成立,执行语句,*5.3 if 语句形式1,例2(P98例5.1):输入两个实数,按代数值,由小到大输出这两数。,main( ) ; printf(”输入两个数a,b:”); scanf ; if /*满足条件为1*/ t=a;a=b;b=t; /*复合语句*/ printf(“%5

4、.2f, %6.2f”, ); 运行:输入两数a,b: 34.8,15.3,float a,b,t;,(%f,%f, printf(输入两个实数a,b:); scanf(%f,%f, ,if (ab) t=a; a=b; b=t;if (ac) t=a; a=c;c=t; if (bc) t=b; b=c;c=t;,问:若输入三个数,按由小到大输出?,小数放a,小数放a,小数放b,源程序: void main() float a,b,c,t; scanf(“%f ,%f,%f”, ,_,_,_,if(表达式) 语句1else 语句2 功能框图:,if(cj=60) printf(及格); el

5、se printf(不及格);,*5.3 if 语句形式2,例3:输入两数,输出两数中大者。,main( )float a,b,m ;printf(“输入两数a,b:”);scanf(“%f , %f ”, ,if (ab) m = a ; else m = b;,if (ab) printf(max=%f,a); else printf(max=%f,b); 注:if和else是配对使用的。,运行: 输入两个数a,b:23.4, 87.5,练习:编程求y的值。 x2+1 x0,1 y= x2-1 (x1),void main() int x,y; printf(输入x:); scanf(%d

6、, ,转换为c语言的表达式,例:写一程序,判断某一年是否为闰年 分析:闰年条件: 满足其一:能被4整除,但不能被100整除;或者能被4整除且能被400整除(实际上能被400整除的即能被4整除)。其逻辑表达式:year?,(year%4=0 printf (“输入年份year:” ); scanf (“%d”, ,*5.3 if 语句形式2,if(l=1),上机题目,实验四:1、2(用if结构实现)、5,if (表达式1) 语句1 else if (表达式2) 语句2 else if (表达式3) 语句3 else if (表达式n) 语句n else 语句 n +1注意:形式3多用于有多个条件

7、需要判断得出不同值的情况。,*5.3 if 语句形式3,例如: if (number500) cost=0.15; else if (number300) cost=0.10; else if (number100) cost=0.075; else if (number50) cost=0.05; else cost=0;,功能:从执行框中可以看出:,例6 编一个程序输入某人工资,若工资 2000元以上增加5%, 150001999元增加8%, 10001499元之间的增加10%, 500999元之间的增加12%, 499元以下的增加15% 给出增加后的工资数。 分析:定义gz,额度i;输入gz; 求增加额度 i :0.05,0.08,0.10, 0.12, 0.15,并计算工资gz=gz*(1+i) 输出gz值,main( ),float gz , i ; printf( “Input gz:”); scanf( “%f” , ,(gz=1500),i= 0.15,2000以上加5%, 150001999加8%, 10001499加10%, 500999加1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论