chap5C语言教学讲解教学课件

上传人:风*** 文档编号:240746189 上传时间:2024-05-04 格式:PPT 页数:42 大小:1.34MB
返回 下载 相关 举报
chap5C语言教学讲解教学课件_第1页
第1页 / 共42页
chap5C语言教学讲解教学课件_第2页
第2页 / 共42页
chap5C语言教学讲解教学课件_第3页
第3页 / 共42页
点击查看更多>>
资源描述
chap5C语言语言31、园日涉以成趣,门虽设而常关。32、鼓腹无所思。朝起暮归眠。33、倾壶绝余沥,窥灶不见烟。34、春秋满四泽,夏云多奇峰,秋月扬明辉,冬岭秀孤松。35、丈夫志四海,我愿不知老。1.1.关系表达式关系表达式例如,例如,abab,a+bb+ca+bb+c,xyzxyz,-1=x=1-1=x=12.2.关系表达式的值为一个逻辑值,即关系表达式的值为一个逻辑值,即“真真”或或“假假”。C C程序中,以程序中,以1 1代表代表“真真”,以,以0 0代表代表“假假”。实际上,以实际上,以非非0 0代表代表“真真”。例如,例如,x=2 x=2 则则-1-1=x=x=1=1的值为的值为1 1先先 -1=x 得得1再再 1y&c!a&b|xy&c2024/5/48二、逻辑表达式二、逻辑表达式逻辑表达式逻辑表达式!a&b|xy&c!a&b|xy&c逻辑表达式的值逻辑表达式的值 例如,例如,!3!3 值为值为0 0注意注意1)1)逻逻辑辑运运算算符符的的操操作作数数是是任任意意类类型型的的,只只要要其其数数据据类类型型能能得到得到0 0或非或非0 0值值(按真对待按真对待)例如,例如,5&5&A A其值为其值为1 1 4&0|2 4&0|2 其值为其值为1 153&2|83&2|8y)printf(%d,x);例例2 2,if(ans=Y|ans=y)printf(Yesn);(2)(2)if(if(表达式表达式)语句语句1 1 else else 语句语句2 2 例例1 1,if(xy)printf(%d,x);else printf(%d,y);例例2 2,char ans;ans=getchar();if(ans=Y|ans=y)printf(Yesn);else printf(Non);复合语句复合语句if if 语句语句expYNsta1sta2expYsta12024/5/414(3)if(表达式表达式1)语句语句1else if(表达式表达式2)语句语句2else if(表达式表达式3)语句语句3else if(表达式表达式m)语句语句melse 语句语句n例如,例如,char ans;ans=getchar();if(ans=Y|ans=y)printf(Yesn);else if(ans=N|ans=n)printf(Non);else printf(Wrongn);exp1YNsta1YNexp2sta2 sta3stanexp3expmYNstamYN2024/5/415例如,商场促销,购物例如,商场促销,购物500500元以上,元以上,8 8折;购物折;购物300300元元以上,以上,8585折;购物折;购物100100元以上,元以上,9 9折;购物折;购物5050元以上,元以上,9595折;购物折;购物5050元以下,不打折。元以下,不打折。设设:消费量为消费量为 moneymoney 折扣为折扣为 discdisc 实际花费实际花费 costcost2024/5/416#include void main()float money,disc,cost;printf(input the money:n);scanf(%f,&money);if(money500)disc=0.2;else if(money300)disc=0.15;else if(money100)disc=0.1;else if(money50)disc=0.05;else disc=0;cost=money-(money*disc);printf(the cost is%0.2fn,cost);2024/5/417v关于表达式关于表达式 a.if(xy)printf(%d,x);else printf(%d,y);b.if(1)printf(True );c.if(year%4=0&year%100!=0)|year%400=0)printf(%d is leap yearn,year);2024/5/418if 语句中又语句中又包含一个包含一个或或多个多个if 语句语句称为称为if 语句的嵌套。语句的嵌套。例如,例如,if(exp1)if(exp2)语句语句1else 语句语句2elseif(exp3)语句语句3else 语句语句4内嵌内嵌 if 语句语句if 与与 else 的配对关系:的配对关系:else总是与它上面的最近的总是与它上面的最近的 if 配对。配对。if if 语句的嵌套语句的嵌套2024/5/419例如,例如,if(exp1)if(exp2)语句语句1 else 语句语句2例如,例如,if(exp1)if(exp2)语句语句1 else 语句语句2内嵌内嵌 if 语句语句内嵌内嵌 if 语句语句2024/5/420例例1,从三个数中找出最大数。,从三个数中找出最大数。#include void main()float x,y,z,max;scanf(%f%f%f,&x,&y,&z);if(xy)if(xz)printf(max=%fn,x);elseprintf(max=%fn,z);else if(yz)printf(max=%fn,y);elseprintf(max=%fn,z);2024/5/421例例2,有一个函数:,有一个函数:-1x0编一程序,输入一个编一程序,输入一个x,输出输出y值。值。#include void main()int x,y;scanf(%f,&x);if(x=0)y=0;else if(x0)y=1;else y=-1;print(x=%d,y=%dn,x,y);输入输入x xx=0?x=0?yn y=0 y=0 x0?x0?yny=1y=1y=-1y=-1输出输出y2024/5/422例例3,判断某年份是否为闰年。,判断某年份是否为闰年。以变量以变量leap代表是否闰年的信息。若闰年,令代表是否闰年的信息。若闰年,令leap=1;非;非闰年,令闰年,令leap=0。year被被4整除整除YNyear被被100整除整除NNYYleap=1leap=0leap=1leap=0leap=1YNOutput:year isOutput:year is notInput yearyear被被400整除整除2024/5/423#include void main()int year,leap;scanf(%d,&year);if(year%4=0)if(year%100=0)if(year%400=0)leap=1;else leap=0;else leap=1;else leap=0;if(leap)printf(%d isn,year);else printf(%d is notn,year);2024/5/424条件运算符(条件运算符(?:),三目运算符。:),三目运算符。v 条件表达式的形式条件表达式的形式表达式表达式1?1?表达式表达式2 2:表达式:表达式3 3例如,例如,(ab)?a:b v 执行顺序执行顺序 条件运算符条件运算符条件表达式条件表达式2024/5/425例如,例如,a=30,b=50;max=(ab)?a:b;求求max?if(ab)max=a;else max=b;v 条件运算符的优先级别条件运算符的优先级别比关系运算符和算术运算符都低,只优先于赋值运算符。比关系运算符和算术运算符都低,只优先于赋值运算符。例如例如,x=x0?-x:x;if(x0?1:(a=a&c0 1 ab?a:b)c)?(ab?a:b):c2024/5/4275.4 switch5.4 switch语句语句b bANMBa表达式表达式p=p1p=p2p=pmp=pn多分支选择结构多分支选择结构2024/5/428switch(表达式表达式)case 常量表达式常量表达式 1:语句:语句 1 case 常量表达式常量表达式 2:语句:语句 2 case 常量表达式常量表达式 n:语句:语句 n default:语句:语句 n+1case和和default的出现次序不影响执行结果。的出现次序不影响执行结果。2024/5/429请比较图请比较图1和图和图2,说明程序段执行结果。,说明程序段执行结果。number=2;图图1图图2break:跳出:跳出switch结构,结构,即终止即终止switch语句的执行。语句的执行。2024/5/430例题例题,根据成绩等级输出成绩范围根据成绩等级输出成绩范围void main()char grade;scanf(%c,&grade);switch(grade)case A:printf(85-100n);break;case B:printf(70-84n);break;case C:printf(60-69n);break;case D:printf(60age60;中年:中年:45age=6045age=60;青年:青年:18age=4518age=45;少年:少年:12age=1812age=18;儿童:儿童:ageage1212。2024/5/432void main()int r;unsigned int age;scanf(%u,&age);switch(age/10)case 0:printf(%d:childishn,age);break;case 1:r=age%10;if(r2)printf(%d:childrenn,age);else if(rc&c+ab&b+ca)s=(a+b+c)/2area=sqrt(s(s-a)(s-b)(s-c)print areaif(a=b&b=c)print 等边等边else if(a=b|b=c|c=a)print 等腰等腰 else if(a*a+b*b=c*c|b*b+c*c=a*a|a*a+c*c=b*b)print 直角直角 else print 普通普通else print 不能组成三角形不能组成三角形End直角直角锐角锐角钝角钝角3.输入三角形的三边,判断是否能组成三角形,若可以,则输输入三角形的三边,判断是否能组成三角形,若可以,则输出它的面积和三角形的类型。出它的面积和三角形的类型。2024/5/4384.4.编写一个运算器程序,输入两个操作数和一个符编写一个运算器程序,输入两个操作数和一个符号,输出运算结果,注意号,输出运算结果,注意0 0不能做除数。不能做除数。2024/5/439#include void main()int num1,num2,result;char op;printf(Please enter two numbersn);scanf(%d%d,&num1,&num2);printf(Please enter operatorn);scanf(%c,&op);switch(op)case+:result=num1+num2;break;case-:result=num1-num2;break;case*:result=num1*num2;break;case/:if(num2=0)printf(divided by 0n);exit(0);else result=num1/num2;break;default:printf(operator is out of rangen);break;printf(The result is%dn,result);2024/5/440作业作业P111:5.3,5.7,5.8与实验二一起交。与实验二一起交。2024/5/44156、书不仅是生活,而且是现在、过去和未来文化生活的源泉。库法耶夫57、生命不可能有两次,但许多人连一次也不善于度过。吕凯特58、问渠哪得清如许,为有源头活水来。朱熹59、我的努力求学没有得到别的好处,只不过是愈来愈发觉自己的无知。笛卡儿60、生活的道路一旦选定,就要勇敢地走到底,决不回头。左拉
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!