c语言学习之基础知识点介绍(四):算术运算符和逗号表达式
本节主要介绍c语言中运算符。
运算符主要分为四类:
1、算术运算符
加(+),减(-),乘(*),除(/),取余(%,两数相除,得到余数)
2、关系运算符
3、逻辑运算符
4、换位运算符
下面将依次介绍运算符。
1、算术运算符:
//加(+):让两个操作数相加得到它们的和。 //例如: int num = 10; int num1 = 11; //int sum = num+num1;printf("num+num1=%d \n",sum ); printf("num+num1=%d \n",num+num1); //减(-):让两个操作数相减得到它们的差。 //例如: int num = 10; int num1 = 11; //int poor = num-num1;printf("num-num1=%d \n",poor ); printf("num-num1=%d \n",num-num1); //乘(*):让两个操作数相乘得到它们的积。 //例如: int num = 10; int num1 = 11; //int product = num*num1;printf("num*num1=%d \n",product ); printf("num*num1=%d \n",num*num1); //除(/):让两个操作数相除得到它们的商。 //注意:除号(/)两边的数字如果都是整数的时候,相除所得的结果一定是整数。当有任意一个数字为浮点数的时候,结果也一定是浮点数,运算结果是double还是float是根据浮 //点数据类型来确定的;如果0作除数的表达式两边都是常量,运行时不会报错,其运算结果是垃圾值;若0作除数,两边任意一方为变量,运行时会报错。 //例如: int num = 10; int num1 = 5; //int quotients = num/num1;printf("num/num1=%d \n",quotients ); printf("num/num1=%d \n",num*num1); //取余(%):让两个操作数相除得到它们的余数。浮点数不能取余。 //注意:取余结果的的正负性,取决于左边操作数的正负性。 //例如: int num = 10; int num1 = 11; //int remains= num/num1;printf("num/num1=%d \n",remains); printf("num%num1=%d \n",num%num1); //预算法则:先乘除,后加减,有括号的先算括号里面的,如果同级,就从左到右一次运算。
//加等(+=):在原值的基础上进行加一个值的操作。例如: int num = 10; num+=5; printf("num=%d \n",num); //减等(-=):在原值的基础上进行减一个值的操作。例如: int num = 10; num -= 5; printf("num=%d \n",num); //乘等(*=):在原值的基础上进行乘一个值的操作。例如: int num = 10; num *= 5; printf("num=%d \n",num); //除等(/=):在原值的基础上进行除一个值的操作。 //注意:除号(/)两边的数字如果都是整数的时候,相除所得的结果一定是整数。当有任意一个数字为浮点数的时候,结果也一定是浮点数,运算结果是double还是float是根据浮 //点数据类型来确定的;如果0作除数的表达式两边都是常量,运行时不会报错,其运算结果是垃圾值;若0作除数,两边任意一方为变量,运行时会报错。 //例如: int num = 10; num /= 5; printf("num=%d \n",num); //余等(%=):在原值的基础上进行余一个值的操作。浮点数不能进行取余操作。 //注意:取余结果的的正负性,取决于左边操作数的正负性。 //例如: int num = 10; num %= 5; printf("num=%d \n",num);
//自增(++):在原来基础上+1。例如: int num = 10; num++; printf("num=%d",num); //注意:当printf("num=%d",num++);这种写法时,程序会先打印之后才会执行++;当printf("num=%d",++num);这种写法时,程序会先执行++之后才会打印 //自减(--):在原来基础上-1。例如: int num = 10; num--; printf("num=%d",num); //注意:当printf("num=%d",num--);这种写法时,程序会先打印之后才会执行--;当printf("num=%d",--num);这种写法时,程序会先执行--之后才会打印 //前缀++/--和后缀++/--的区别: //前缀:先自增/自减之后在参与运算 //后缀:先拿自身的值参与运算,后自增/自减 //不管如何,都会执行++/--;
扩展一个逗号表达式:
//逗号运算符:英文的逗号 , //逗号运算式:(表达式1,表达式2,.......表达式n); //执行方式:会从表达式1执行到表达式n,但是只会取最后一个表达式的值为最终结果。 //例如: int num1= 1; int num2 =2; int sum = (1,2,3,4,5,num1+num2,num1*num2); printf("sum = %d \n" ,sum)//最终输出 2