一 什么是算数运算符
算术运算符:
+: 就是把两个数据相加,得到和
-: 就是把两个数据相减,得到差
*: 就是把两个数据相乘,得到积
/: 就是把两个数据相除,得到商
%: 就是把两个数据相除,得到余数
算术运算式:
就是用算术运算符组成的式子就叫算术运算式
两个整数相除,那么得到的也一定是一个整数
10/3 = 3;
11/ 3 = 3
12/3 = 4
10 / 4 = 2
如果有一个是浮点数,那么得到的也一定是一个浮点数
tips:
1.取余结果的正负性,只跟取余符号左边的那个数有关,左边的是正,那么结果也是正数,左边是负,那么结果也是负的
2.取余只能用在整数中,不能用在浮点数中
二 算术运算符的优先级
先算乘除,后加减,如果同样就从左往右依次运算,有括号的先算括号里面的
三 类型转换
就是不同类型的数据进行运算,就会把某一个类型转换成你那个类型
1). 隐式转换:也叫自动转换,就是编译器自动帮你判断应该转换成什么类型
例: int num = 3.333333;
2). 显示转换:就是由程序员告诉编译器应该转换成什么类型
例: int num = (int)3.33333;
int num = (float)3.333333; //还是3
理解:
如果类型不同,然后参与运算,那么小类型会转换成大类型
比如说:int和float或者double参与运算,那么int会转换为float或者double
tips:代码例子如下
#include <stdio.h>
int main(int argc, const char * argv[]) {
int num = 10+20*2;
printf("num=%d\n",num);
int num2 = 10 + 20 -10;
printf("num2=%d\n",num2);//20
int num3 = 40+20*2/3+10;
printf("num3=%d\n",num3);//63
int num4 = 2 + 2*3+20%3;//2 + 6 + 20 %3 2+6+2 = 10
printf("num4=%d\n",num4);//10
int num5 = 2 + 10%3*2;
printf("num5=%d\n",num5);//4
int num6 = (2+3) * 2;
printf("num6=%d\n",num6);
return 0;
}