操作符也被称为运算符,意思是一样的。
C语言的操作符有很多,目前只介绍常用的基础的,即算术操作符,赋值操作符和单目操作符。
目录
算术操作符
算数操作符就是数学中的加减乘除,再加上一个模%。符号是+、-、*、/、%
+、-、*、/就是加减乘除,就是模不太常见
模是取模,取模跟取余挺像,但不同。举个例子,取余5/2=2余1,取模5%2=1,结果是取余的余数。
加减+-:
加减运算,返回两个整数加减后的值。
int main()
{
int x = 1 + 2;
int y = 3 - 1;
printf("x = %d y = %d", x, y);
return 0;
}
乘*:
int main()
{
int num = 3;
printf("%d\n", num * num);//结果是9
return 0;
}
除/:
用运算符/有些地方需要注意
除号两端如果是整数,执行的是整数除法,结果也是整数,哪怕结果是小数也会省略小数部分取整数部分。
int main()
{
int x = 7 / 3;
float y = 7 / 3;
float z = 7 / 3;
printf("%d\n", x); //结果是2
printf("%f\n", y);//结果是2.000000
printf("%.2f\n", z);//结果是2.00printf("%.0f\n", z);//结果是2
return 0;
}
即使用了float(浮点数)结果还是取2,后又跟6个0,如果不想要那么多0,或者不想要0,可以在%后加.n,n是几就取小数点后几位形式为%.n
模%:
取模返回,模运算,返回两个整数相除的余值。(只能用于整数,不能用于浮点数)
int main()
{
int x = 9 % 2;
printf("%d", x);//结果为1
return 0;
}
赋值操作符
赋值:
说到赋值,就要说赋值前一步操作了,初始化。
初始化:在创建变量时给的初值是初始化
初始化后再给变量一个值就叫赋值了
int main()
{
int x = 1;//初始化
x = 3;//赋值
return 0;
}
赋值操作还可以再复杂点,即连续赋值
int main()
{
int x = 1;
int y = 1;
int z = 1;
z = x = y + 1;//连续赋值
return 0;
}
可以z = x = y+1,但不能z = x+1 = y + 1,因为表达式必须是可修改的左值
复合赋值符:
int main()
{
int x = 1;
int y = 1;
int a = 1;
int b = 1;int c = 1;
x = x + 2;
y = y - 1;
a = a * 2;
b = b / 1;c = c % 2;
}
C语言提供复合赋值符方便我们编写代码,像上面的加减乘除可以写成以下形式
x += 2 ;
a = a * 2;
a *= 2;
b /= 1;c %= 2;
单目操作符
++、--、+、-
主要是++、--,++、--分前置和后置
前置++
后置++
由此可见,前置是先++,后赋值,使b=2然后再赋值给a。后置是先赋值再++,先a = 1后b+1。
前置--跟后置--同理。
+和-就是正和负
int main()
{
int a = +1;//等同于int a = 1
int b = -1;//b等于-1
a = b++;
printf("a = %d b = %d", a, b);
return 0;
}