运算符梳理
算术运算符的梳理
双目运算符有:
我们要注意:
做完a+b的值,50000已经超出了short的范围了
所以,我们要考虑全面,定义一个合适的类型的变量去接收a+b的值。
减法除法也是同理。
我们看看除法:
没有办法整除的,除法取的是商数,不会进行四舍五入的。
我们这样做:
如果我们要让除法的结果是正确的并且带有小数:
所以我们不能是整数除以整数
因为我们直接写一个整数,编译器默认是int,我们直接写一个浮点数,编译器默认是double
7.5f 让编译器默认是float类型。
我们这么写就OK了:
我们看看取余(取模):
得到的是余数
逗号表达式的坑
从左向右依次计算,我们先看表达式1:b=a+20,b=10+20=30
然后我们看表达式2:a=b-10=30-10=20
然后我看表达式3:a+b=20+30=50
我们再看下面这题:
打印的值是多少?
结果是8 0 0,不是我们想象的2 6 10
实际上,二维数组的初始化的括号都是{}
但是,题目是这样出的啊:
逗号表达式的结果就是括号里最右边的那个表达式的结果
(1,2, 3,4)————》4
(5, 6 , 7,8)—————》8
(9,10 ,11 ,12)————》12
所以
int arr[3][4]={4,8,12};
所以二维数组的第1行是4,8,12,0
其他两行的数据全是0
所以第0行第1列是8
第1行第1列是0
第2行第1列是0
打印出来的是8 0 0