东方一诺计算机二级c语言第2章3类型转换和运算符

东方一诺计算机二级c语言第2章3类型转换和运算符

ID:40018500

大小:700.81 KB

页数:13页

时间:2019-07-17

东方一诺计算机二级c语言第2章3类型转换和运算符_第1页
东方一诺计算机二级c语言第2章3类型转换和运算符_第2页
东方一诺计算机二级c语言第2章3类型转换和运算符_第3页
东方一诺计算机二级c语言第2章3类型转换和运算符_第4页
东方一诺计算机二级c语言第2章3类型转换和运算符_第5页
资源描述:

《东方一诺计算机二级c语言第2章3类型转换和运算符》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、本节内容:不同数据类型之间的转换运算符东方一诺技术培训研发中心2.5不同类型数据间的转换隐式转换运算转换规则:不同类型数据运算时先自动转换成同一类型东方一诺技术培训研发中心doublefloatlongunsignedintchar,short低高说明:必定的转换运算对象类型不同时转换例charch;inti;floatf;doubled;ch/i+f*d-(f+i)intintdoubledoubledoubledoubledoubledouble东方一诺技术培训研发中心显式转换(强制转换)一般形式:(

2、类型名)(表达式)例(int)(x+y)(int)x+y(double)(3/2)(int)3.6说明:强制转换得到所需类型的中间变量,原变量类型不变例main(){floatx;inti;x=3.6;i=(int)x;printf(“x=%f,i=%d”,x,i);}结果:x=3.600000,i=3精度损失问题较高类型向较低类型转换时可能发生东方一诺技术培训研发中心赋值运算符和表达式简单赋值运算符符号:=格式:变量标识符=表达式作用:将一个数据(常量或表达式)赋给一个变量复合赋值运算符种类:+=-=*

3、=/=%=《=》=&=^=

4、=含义:exp1op=exp2exp1=exp1opexp2a+=3a=a+3x*=y+8x=x*(y+8)x%=3x=x%3例a=3;c=d+2;东方一诺技术培训研发中心说明:结合方向:自右向左优先级:2左侧必须是变量,不能是常量或表达式赋值表达式的值与最左边变量值相等,且可嵌套赋值转换规则:使赋值号右边表达式值自动转换成其左边变量的类型例3=x-2*y;a+b=3;例floatf;inti;i=10;f=i;则f=10.0例inti;i=2.56;//结果i=2;例:a=

5、b=c=5a=(b=10)/(c=2)//表达式值为5,a,b,c值为5//表达式值5,a=5,b=10,c=2东方一诺技术培训研发中心说明:结合方向:自右向左优先级:2左侧必须是变量,不能是常量或表达式赋值表达式的值与最左边变量值相等,且可嵌套赋值转换规则:使赋值号右边表达式值自动转换成其左边变量的类型例:a=12;a+=a-=a*a例:inta=2;a%=4-1;a+=a*=a-=a*=3;//a=-264等价于a=a+(a=a-(a*a))//a=0等价于a=a+(a=a*(a=a-(a=a*3))

6、)//a=a%(4-1)东方一诺技术培训研发中心自增、自减运算符++--作用:使变量值加1或减1,本身是赋值运算种类:前置++i,--i(先执行i+1或i-1,再使用i值)后置i++,i--(先使用i值,再执行i+1或i-1)例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,

7、a=4东方一诺技术培训研发中心自增、自减运算符++--作用:使变量值加1或减1种类:前置++i,--i(先执行i+1或i-1,再使用i值)后置i++,i--(先使用i值,再执行i+1或i-1)说明:++--不能用于常量和表达式,如5++,(a+b)++++--结合方向:自右向左优先级:-++-------->*/%----->+-(14)(13)(12)例-i++-(i++)i=3;printf(“%d”,-i++);//-3例-i++i=3;printf(“%d”,-i++);东方一诺技术培训研发中心

8、逗号运算符和表达式“,”是C语言中的一种特殊运算符用逗号将表达式连接起来的式子成为逗号表达式形式:表达式1,表达式2,……表达式n结合性:从左向右优先级:1逗号表达式的值:等于表达式n的值例a=3*5,a*4a=3*5,a*4,a+5例x=(a=3,6*3)x=a=3,6*a例a=1;b=2;c=3;printf(“%d,%d,%d”,a,b,c);printf(“%d,%d,%d”,(a,b,c),b,c);//a=15,表达式值60//a=15,表达式值20//赋值表达式,表达式值18,x=18//逗

9、号表达式,表达式值18,x=3//1,2,3//3,2,3东方一诺技术培训研发中心逗号运算符和表达式形式:表达式1,表达式2,……表达式n结合性:从左右优先级:1逗号表达式的值:等于表达式n的值例:/*ch2_6.c*/#includemain(){intx,y=7;floatz=4;x=(y=y+6,y/z);printf("x=%d",x);}运行结果:x=3东方一诺技术培训研发中心本章总结★重点:标

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。