C语言之算数运算符

一 什么是算数运算符

算术运算符:

+: 就是把两个数据相加,得到和

-: 就是把两个数据相减,得到差

*: 就是把两个数据相乘,得到积

/: 就是把两个数据相除,得到商

%: 就是把两个数据相除,得到余数

算术运算式:

就是用算术运算符组成的式子就叫算术运算式

两个整数相除,那么得到的也一定是一个整数

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;

}