表达式&运算符
运算符:是指进行运算的动作,比如加法运算符”+“,减法运算符”-“
算子:是指参与运算的值,这个值可能为常数也可能是变量,还可能是一个方法的返回值。
a=b+5 其中 a,b,5都是算子,”=,+“是运算符
%:表示取余 /:除 如:4/6=0 4%6=2
计算时间差:
int hour1,minute1;
int hour2,minute2;
scanf("%d%d",&hour1,&minute1);
scanf("%d%d,&hour2,&minute2");
int t1=hour1*60+minute1;
int t2=hour2*60+minute2;
int t=t2-t1;
printf("时间差是%d小时%d分",t/60,t%60);
return 0;
hour*60+minute1--->转换为分钟为单位
t/60----->小时部分 t%60---->分钟部分
求平均值:
int a,b;
scanf("%d%d",&a,&b);
double c=(a+b)/2.0;
printf("%d和%d的平均值=%f\n",a,b,c);
运算符优先级:
特别:a*-b // a*(-b)
a*+b // a*(+b)
其他的遵循数字运算顺序
赋值运算符:赋值也是运算,也有结果
a=6的结果是a被赋予的值,也就是6
a=b=6---->a=(b=6) 赋值运算自右向左
交换两个变量:
a=5 b=6 两个进行交换
t=a a=b b=t
#include<stdio.h>
int main()
{
int a=5;
int b=6;
int t;
t=a;
a=b;
b=t;
printf(”a=%d,b=%d\n“,a,b);
return 0;
}
复合赋值符:+=,-=,*=,/=,%=
total+=5;
total=total+5;
注意:两个运算符中间不要有空格
例:total+=(sum+100)/2 total*=sum+12
total=total+(sum+100)/2 total=total*(sum+12)
递增递减运算符: ++ ,-- 他们的总用就是给变量+1或-1
count++;
count+=1;
count=count+1;
"++ --"放前面叫前缀形式,放后面叫后缀形式
特别:a++:a加1以前的值 ++a:加了1以后的值 a--:a减以前的值 --a:减了以后的值
#include<stdio.h>
int main()
{
int a;
a=10;
printf("a++=%d\n",a++);
printf("a=%d\n",a);
printf("++a=%d\n",++a);
print("a=%d\n",++a);
return 0;
}
输出 : a++=10, a=11 ++a=12 a=12
逻辑运算符:!(非) &&(并且) ||(或)
优先级别:算术>关系 >逻辑 > 赋值