运算
基本运算符
运算符要遵守先后顺序规则。
表达式与赋值表达式
表达式由变量、常量以及连接它们的运算符号组成。例如,vx+32
进行加法的表达式中,vx
、32
和vx+32
都是表达式。
一般情况下,使用xx运算符的表达式,称为xx表达式。
表达式语句:C语言中规定语句必须以分号结尾,因此赋值表达式写成如下才能称为语句,
vc=32+vx; /*表达式语句*/
数据类型
两种基本类型数据:
int(整数型):只处理数值的整数部分,小数点点以后部分被舍弃。
C语言中以浮点数(floating-point number)的形式表示实数,浮点数有几种类型,这里先只介绍double(双精度浮点数)。
从下面代码了解两者区别:
可以看出,int类型变量n,不管是赋值时还是作除法运算时,只对整数部分做处理,小数部分全部舍弃。
值得注意的在使用printf函数输出double类型的值,转换说明要用%f
(默认显示小数点后6位)
实际上,数据类型相当于隐藏着属性的摸具,包含某个数据类型的变量,就是根据这个摸具做出创建出来的。
数据类型运算规则与类型转换
相同数据类型或者不同数据类型运算时规则如下:
即较小的数据类型操作数会转换为较大的数据类型(范围更大),然后再进行计算。
转换说明
!](https://img-blog.csdnimg.cn/77142d2e99e74f92ab01f40885fbf032.png)
A:0标志
设定了0标志之后,如果数值的前面有空余位,则用0补齐位数(如果无0标志,则会用空白补齐)
例如:
printf("[%4d]",123); /*运行结果:[ 123]*/
printf("[%04d]",123); /*运行结果:[0123]*/
B:最小字段宽度
至少要显示出的字符位数。不设定该位数或者显示的数值超过设定的位数,会根据显示的数值显示出必要位数
例如:
printf("[%3d]",12345); /*运行结果:[12345]*/
C:精度
指定小数点后显示的最小位数,如果不指定,整数时默认为1,浮点数默认位6
例如:
printf("[%f]",123.13); /*运行结果:[123.130000]*/
D:转换说明符
另外
例如:
printf("[%-6.1f]",123.13); /*运行结果:[123.1]*/
printf("[%6.1f]",123.13); /*运行结果:[ 123.1]*/
注意小数点也算一个字段宽度。