计算机算数运算基础

计算机算数运算基础 - //加减符号与数学基本保持一致*/ //除法在运算数的数据类型均为整型时相当于整除不会出现小数% //求余符号结果符号与左操作数一致可以对2求余判断奇偶 or -- //自增自减//参与到其他运算时i先用后加i先加后用//其中运算数例如上述的i必须是左值可定位起存储地址的就是左值const int a 10 //const表示将变量限定为只读a; //取a所在空间的起始地址此时虽然a的值不可变但是a的存储地址可定位a还是左值隐式类型转换:当低精度数据和高精度数据放到一起运算时 会发生转换当有符号数与无符号数在一起运算且它们的长度一致有符号会向无符号转换从而有可能导致运算错误随机数函数random#include stdlib.hint rand(void);rand函数需要一个种子值来产生随机数种子值不变时随机数也不变void srand(unsigned int seed);seed --- 随机数产生需要的种子值例下图代码可以产生十个随机数贪心原则:从左到右逐个字符扫描尽可能多的结合成c语言的运算符赋值运算例int a,b,c;a 10;b 20;c 20;Tips赋值运算从右向左结合abc1 a (b (c 1))不同数据类型混合赋值1高精度》低精度精度丢失float f 1.23;int a ;a f; //此式结束后a1(2)长整型 短整型int a 0x12345678;short b a;//高位截断 也就是低位保留b0x5678(3).短整型 长整型有符号短整型 长整型符号位扩展short b 0x1234;int a b; //a0x00001234 b的符号位为0short b 0x8765;int a b; //a0xffff8765 b的符号位为1无符号短整型 长整型统统补0a 1 //相当于a a1a - 1 //相当于a a-1以此类推* / %逗号运算:逗号运算的表达式结果 等于 最后一个表达式的运算结果