6运算符与表达式教学课件.ppt
复习1、学会输入函数、学会输入函数scanf()()2、正确定义并使用常量、正确定义并使用常量告诉计算机应该干什么告诉计算机应该干什么本节课学习目标1、学会使用算术运算符、赋值运算符、学会使用算术运算符、赋值运算符2、能够将数学公式转换为计算机识别、能够将数学公式转换为计算机识别的表达式的表达式使用计算机进行科学计算使用计算机进行科学计算必备(背)英语单词复习:include stdio.h main printf int float double define scanf一、数据类型5C数据类型基本类型构造类型指针类型空类型void定义类型typedef字符类型 char枚举类型enum整 型实型单精度型float双精度型double数组结构体struct共用体union短整型short长整型long整型 int数据类型决定:1. 数据占内存字节数2. 数据取值范围3. 其上可进行的操作6二、运算符和表达式C运算符算术运算符:(算术运算符:(+ - + - * * / % + - / % + -)关系运算符:(关系运算符:( = != = !=)逻辑运算符:(!逻辑运算符:(! & |& |)位运算符 :( | &)赋值运算符:(赋值运算符:(= = 及其扩展)及其扩展)条件运算符:(条件运算符:(?:?:)逗号运算符:(逗号运算符:(, ,)指针运算符:(* &)求字节数 :(sizeof)强制类型转换:(类型)分量运算符:(. -)下标运算符:()其它 :(( ) -)7基本算术运算符: + - * / %结合方向:从左向右优先级: - - -* * / / % % - + -+ - (1) (2) (3)说明:“-”可为单目运算符时,右结合性两整数相除,结果为整数%要求两侧均为整型数据1 1、算术运算符和表达式、算术运算符和表达式例 5/2 = -5/2.0 =例 5%2 = -5%2 = 1%10 = 5%1 = 5.5%22-2.51-110()练习:1、编写程序,把500min换算成用小时、分钟联合表示。2、编写程序,输入一个三位数,输出百位、十位、个位。89作用:使变量值加1或减1种类:前置 +i, -i (先执行i+1或i-1,再使用i值)后置 i+,i- (先使用i值,再执行i+1或i-1) 2 2、自增、自减运算符、自增、自减运算符 + -+ -例 j=3; k=+j; j=3; k=j+; j=3; printf(“%d”,+j); j=3; printf(“%d”,j+); a=3; b=5;c=(+a)*b; a=3; b=5;c=(a+)*b; /k=4,j=4/k=3,j=4/4/3/c=20,a=4/c=15,a=4基本运算符:=扩展:+=、-=、*=、/=、%=说明:赋值运算符左边必须是一个变量,不能是常量或表达式,而右边任意。当赋值号两边的数据类型不同时,系统自动进行类型转换。原则是:赋值号右边的数据类型转换成符号左边的变量相同的数据类型。10 3 3、赋值运算符、赋值运算符 = =11 3 3、常用数学函数常用数学函数 #include函数列表:abs()求绝对值求绝对值fabs()求浮点数的绝对值求浮点数的绝对值labs()求长整型数的绝对值_cabs()计算复数的绝对值acos()求反余弦asin()求反正弦atan()求反正切atan2()求反正切,按符号判定象限ceil()求不小于某值的最小整数 (求上界)cos()求余弦cosh()求双曲余弦div()求商和余数exp()求e的幂floor()求不大于某值的最大整数 (求下界)fmod()求模数frexp()求数的科学表示法形式ldexp()以科学计数法计算ldiv()以长整型返回商和余数log()自然对数log10()以10为底的自然对数modf()将一个数分解成整数和小数部分pow()求幂求幂sin()求正弦sinh()求双曲正弦sqrt()求平方根求平方根tan()求正切tanh()求双曲正切_hypot()返回直角三角形斜边的长度 数学公式转换为表达式1、y = ax2 + bx + c转化为y= a*x*x + b*x + c也可以转化为y = a * pow(x,2) + b * x + c;2、 转化为s= 1.0/2 *(a+b+c)3、转化为area=sqrt(s*(s-a)*(s-b)*(s-c);4、y=| - x5|转化为y= fabs(- pow(x,5)5、sin(n)+3(a-5)b 转化为sin(n)+(3*(a-5)*b12)(21cbas)()()(csbsassarea13#include(或者同时包含math.h)main()1、定义变量;2、输入变量值;3、科学计算;4、打印计算结果;三、科学计算程序编程顺序三、科学计算程序编程顺序用算术运算符和括号将运算对象(也称操作数)连接起来的、符合语法规则的式子,称为算术表达式。练习1、输入整数x,输出其绝对值#include #includemain( )1、定义变量;2、输入变量值;3、科学计算;4、打印计算结果;14int x,y;scanf(%d,&x); y=fabs(x);printf(%d的绝对值是%d,x,y);/*sanjiao.c*/#include #include main() float a,b,c,s,area; scanf(%f,%f,%f,&a,&b,&c); s=1.0/2*(a+b+c); area=sqrt(s*(s-a)*(s-b)*(s-c); printf(a=%f, b=%f, c=%f, s=%fn,a,b,c,s); printf(area=%fn,area);输入:3,4,5 输出:a= 3.00, b= 4.00, c= 5.00 s= 6 area= 6文件包含预处理命令变量定义输入数据输出数据提高练习: 输入三角形边长,求面积)()()()(21csbsassareacbas总结1、能够将数学公式转换为计算机识别、能够将数学公式转换为计算机识别的表达式的表达式2、学会引用数学函数、学会引用数学函数使用计算机进行科学计算使用计算机进行科学计算 求求x x2方程的根。方程的根。 a a,b b,c c由键盘输入,设由键盘输入,设 。众所周知,一元二次方程式的根为众所周知,一元二次方程式的根为x1= x2= x1= x2= acb42aacbb242aacbb242拓展练习: 待解决问题#include #include #include #include void main ( ) void main ( ) / /定义浮点型变量定义浮点型变量 /输入系数输入系数 /根据公式根据公式 计算计算x1x1 /根据公式根据公式 计算计算x2 x2 printf(nnx1=%5.2fnx2=%5.2fn,x1,x2);printf(nnx1=%5.2fnx2=%5.2fn,x1,x2); 求x x2方程的根。方程的根。 #include #include #include #include void main ( ) void main ( ) float a,b,c, x1,x2; float a,b,c, x1,x2; scanf(a=%f,b=%f,c=%f,&a,&b,&c); scanf(a=%f,b=%f,c=%f,&a,&b,&c); x1=-b/(2 x1=-b/(2* *a)+ sqrt(ba)+ sqrt(b* *b-4b-4* *a a* *c)/(2c)/(2* *a);a); x2=-b/(2x2=-b/(2* *a)-sqrt(ba)-sqrt(b* *b-4b-4* *a a* *c)/(2c)/(2* *a);a); printf(nnx1=%5.2fnx2=%5.2fn,x1,x2); printf(nnx1=%5.2fnx2=%5.2fn,x1,x2); 求x x2方程的根。方程的根。