1.C语言中运算符是指进行运算的动作。
2.程序员必须具备的重要思维:
● 定义变量
● 输入
●设计算法
3.单目运算:运算符号只连接一个算子。
如:+a , -b
4.经典案例(小白练手必备)
#include <stdio.h>
int main()
{
int hour1,minute1;
int hour2,minute2;
printf(“请输入两个时间\n”
“例如/3 20,2 10/即表示3时20分和2时10分的时间差\n”);
scanf("%d %d",&hour1,&minute1);
scanf("%d %d",&hour2,&minute2);
int t1=hour160+minute1;
int t2=hour260+minute2;
int t=t1-t2;
printf(“所求的时间差时%d时%d分”,t/60,t%60);
return 0;
}
5…单目运算:运算符号只连接一个算子。
如:+a , -b
6.双精度浮点数(double)是计算机使用的一种数据类型,使用 64 位(8字节) 来存储一个浮点数。 它可以表示十进制的15或16位有效数字,其可以表示的数字的绝对值范围大约是:2.23x10-308 ~ 1.79x10308。IEEE754为其定制标准。
如 int a,b;
double c=(a+b)/2.0
★★★运算符优先级
高
⬇ 第一级: 单目加减(+ -) →→→→→自右向左结合
⬇ 第二级: 乘除 取余(* / %)→→→自左向右结合
⬇ 第三级: 加 减 (+ -)→ →→→→自左向右结合
⬇ 第四级: 赋值 (=)→→→→→→→自右向左结合
★★ 例如:a=b=6等价于a=(b=6)
在C语言中赋值运算符是优先级是最低的
8 交换两个变量
即:如果已有
int a=6;
int b=5
如何交换 a b 两个变量的值呢
显然 a=b ,b=a是不对的
★★★ 所以需要引入第三个变量 c
int c →→→→ *a=c
a=b
b=c
9.★★复合赋值
例如 “+=” “*=” “/+”
注意:复合赋值运算符中间不能留有空格
10.**total+=5
即 total=total+5;
11.对于复杂的运算式
12
先运算复合运算符后面的式子然后在计算复合运算式
如:a+=b+c 等价于→→→a=a+(b+c)
a-=b+c 等价于→→→a=a-(b+c)
a*=b+c 等价于→→→a=a*(b+c)
a/=b+c 等价于→→→a=a/(b+c)
a%=b+c等价于→→→a=a%(b+c)
★★★递增递减运算符
● 递增运算符:++
● 递减运算符:–
● 递增递减运算符都是单目运算符
● 它们所连接的算子都必须是变量如 a– *,amount++
● 作用:★★给这个变量加1或者减1
例如:★★★ count++ 等价于→→count+=1等价于→→count=count+1
14 前缀和后缀
++ – 可以放在变量算子的前面→→→→ 叫做前缀形式
++ – 也可以放在变量算子的后面→→→ 叫做后缀形式
*a++的结果是 +1 以前的值
++a的结果是 +1以后的值
递减运算符也是如此
经典案例:
#include <stdio.h>
int main()
{
int a;
a=10;
printf(“a++=%d\n”,a++);
printf(“a=%d\n”,a);
printf("++a=%d\n",++a);
printf("a-%d\n",a);
return 0;
}