c语言3

数据类型的转换

自动转换

1.       转换按数据长度增加的方向进行;

2.       有小数点的为double型,float没小数点;

3.       Char,short,型参与运算时,必须先转换成Int型;

4.       赋值运算符“= 右边量的类型将全部转为左边量的类型;

5.       自动转换规则:

Char,short→int→unsigned→long→double

Eg:{

     Float PI=3.14159

     int s,r=5;

     s=r*r*PI;

printf(“s=%d\n”,s);

}

 PI为实型,s,r为整形,执行s=r*r*PIrPI都换成double型,计算结果也为double型,但S为整形,所以结果仍为整形,精度损失了,可将s定义为double或者float,解决精度问题。

 

强制转换

1.       一般形式:(类型说明符)(表达式)

2.       Eg:(floata ;(int)(x+y);注意括号

 

两种转换类型均为临时转换,在一句中进行转换,下一句还是原来类型。

 

{

Printf(“%d\n”,3/2);

}    运行结果为因为%d,要求输出为整型,舍弃小数。

 

{

Printf(“%f\n”,3/4);

}     会出现编译错误,3,4均为整型,输出却为%f(浮点型),改为3.0/4,则会转化,结果为0.750000

{

Printf(“7÷2=%d······%d\n”,7/2,7%2);

}     结果为7÷2=3······1

 

 

算数运算符

1.优先级、结合性,记住表

2.自增自减运算符:++i--ii++i--

Eg: 

 

 

 

 

 

 

 

3.       复合的赋值运算符

X*=Y+7 等价于X=X*(Y+7)

4.       逗号运算符:

Y=(x=a+b),(b+c); 最后面的表达式值赋值给Y

 

例子:

 

 

 

例子:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/xinyue6/p/9806322.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值