欢迎来到天天文库
浏览记录
ID:50767392
大小:69.00 KB
页数:4页
时间:2020-03-08
《C语言程序设计 教学课件 作者 范兴福教案9.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、课题 其他运算符的应用授课人 课型新授课课时1教学目标1、掌握条件运算符和条件表达式2、掌握逗号运算符和逗号表达式3、掌握sizeof运算符教学重点条件运算符、逗号运算符的的运算规则教学难点条件运算符的使用教学方法讲授法,实例教学法教学手段与教具投影仪板书设计课后记 教 学 过 程教师活动学生活动【复习提问】1、在C语言中,逻辑数据是怎样表示的?2、关系运算符的操作对象可以是什么类型的数据,操作的结果是什么?【讲授新课】4.5其他运算符的应用一、条件运算符和条件表达式1.条件表达式条件运算符是在两个表
2、达式的值中选择一个的操作。它的一般形式为:表达式1?表达式2:表达式3它的操作为:若表达式1的值为真(非0),则此条件表达式的值为表达式2的值;若表达式1的值为假(0),则取表达式3的值作为此条件表达式的值。条件运算符“?:”共要求三个运算量,是C语言中唯一的一个三目运算符。例如:x=5>3?3+2:3-1;要把条件表达式“5>3?3+2:3-1”的值赋给变量x,那么条件表达式的值是多少呢?因为表达式1(5>3)的值是真(非0),所以应该取表达式2(3+2)的值,作为条件表达式的值,最后求得条件表达式的值为5,
3、把5赋给变量x。再如,如果x>y则将x赋值给a,否则将y赋值给a,便可组成条件表达式赋值语句。如:a=x>y?x:y;2.条件运算符的说明①条件运算符的优先级。条件运算符优先于赋值运算符,但低于算术、关系、逻辑运算符。例如:x=a>0?a*9:a*(-9)运算顺序相当于:x=(a>0)?(a*9):(a*(-9))所以括号可以省略不写。②条件运算符的结合方向是“从右至左”。例如:x>y?x:y>z?y:z运算顺序相当于:x>y?x:(y>z?y:z)教师强调设例设例讲评根据教师提问做出回答理解含义如果x=1,y
4、=2,z=3,则条件表达式的值为3。③表达式1、表达式2和表达式3的类型可以各不相同。3.条件表达式程序举例例:编写求x=5,y=10,z=20中最大值的程序如下:main(){intx=5,y=10,z=20;intmax;max=x>y?x:y;max=max>z?max:z;printf("MAXis%d",max);}运行结果如下:MAXis20二、逗号运算符和逗号表达式1.逗号表达式用逗号运算符(,)将两个表达式连接起来的式子称为逗号表达式。一般形式如下:表达式1,表达式2逗号表达式的计算过程是:
5、先计算表达式1,再计算表达式2,表达式2的值是整个逗号表达式的值。例如:逗号表达式3+5,8+2的值为10。再如:逗号表达式a=2*3,a*10先计算a=2*3得a=6,再计算a*10得60,则逗号表达式的值为60。2.逗号运算符的说明①一个逗号表达式可以与另一个逗号表达式组成一个新的逗号表达式,如:(a=3*5,a+10),a/5先计算a=15,再计算a+10得25(注意a仍为15),最后计算a/5得3,即整个表达式的值为3。于是我们将逗号表达式的一般形式扩展为:表达式1,表达式2,……,表达式n表达式n的值
6、作为整个逗号表达式的值。②逗号运算符在所有运算符中优先级别最低,它的结合方向是“从左至右”。请比较以下两个表达式的运算结果的不同:利用程序演示结果,讲解运算符的运算规则设例讲解b=(a=10,3*a)b=a=10,3*a第一式是赋值表达式,小括号内是一个逗号表达式,该逗号表达式的值为30,所以b的值为30;第二式是逗号表达式,b的值为10,而表达式的值为30。(因为赋值运算符的优先级高于逗号运算符)③并不是任何地方出现的逗号都是逗号运算符。例如,printf("MAXis%d",max);中的逗号就不是逗号
7、运算符。逗号表达式在循环中的应用,在第五章中将有讲解。三、sizeof运算符1.sizeof的一般形式sizeof(x)其中,参数x可以是类型名,也可以是变量名。2.sizeof的功能sizeof运算符给出指定类型(或变量)在内存中所占字节数。例:假设有intx,floaty,doubled,则:sizeof(x)的值为2sizeof(int)的值为2sizeof(y)的值为4sizeof(float)的值为4sizeof(d)的值为8sizeof(double)的值为8[课堂小结]本节主要介绍了条件运算符与条
8、件表达式、逗号运算符与逗号表达式和sizeof运算符的用法。[布置作业]列出实例程序加以强调运行实例学生尝试独立总结
此文档下载收益归作者所有