逻辑运算以及其他运算
-
逻辑与&&运算
两个值都为真,结果才为真。
当条件一为真时才会接着判断条件二,当条件一为假的时候就不会接着判断。 -
逻辑或||运算
只要满足其中一个为真,结果就为真。
当条件一为真时,不再判断条件二,当条件一为假的时候才判断条件二 -
逻辑非!运算
只对一种条件进行判断,是一种单目运算符。 -
算数运算
加+减-乘*
除/ —— 两个整数相除取整数部分
取余% ——只有整数和char型可以做%运算,float和double型不能做。 -
赋值运算
左边必须是变量才能进行赋值,且优先级很低,只比","逗号高。 -
复合赋值运算
x += 10 相当于 x = x + 10
有:+= -= *= /= %= -
自增自减运算
后缀自增自减
先取值,再自增/自减:
x = i++ 相当于 x = i,i = i+1
x = i-- x = i,i = i-1
前缀
先自增/自减,再取值:
x = ++i 相当于 i = i+1,x=i
x = --i i = i-1,x=i
注意:只能对变量做++ --运算
尽量使用一样的自增自减,避免失误。 -
逗号运算符
优先级最低
#include <stdio.h>
int main(void){
int ret;
ret = (1+2,3+4,9+9);
printf("逗号运算符的结果为:%d",ret);
// 逗号运算符会输出从左往右计算的最后一个结果9+9=18。
return 0;
}
- 三目运算符
条件?表达式1:表达式2
如果条件为真,就取表达式1为整个表达式的值
如果条件为假,就取表达式2为整个表达式的值
用法示例:
#include <stdio.h>
int main(void){
int year;
int holiday;
printf("请输入您入职的年数:");
scanf("%d",&year);
holiday = year >= 10 ?10:7;
printf("您有%d天的假期!",holiday);
return 0;
}