Hello,大家好,本篇文章主要对C语言中的算数操作符和赋值操作符进行了一个相对详细的解释,欢迎大家。
算数操作符
+ - * / %
(1)加法操作符:+ (用于加法运算,使其两侧的值相加)
例如:
printf("%d",4 + 20);
//打印结果为24,而不是表达式4+20。
相加的值(运算对象)可以是变量,也可以是常量。
(2)减法操作符:- (用于减法运算)
(3)乘法操作符:*
在C语言中,没有专门的函数来表示平方,那么如果要打印一个平方表,该怎么办呢?这时候,我们就可以用乘法来计算平方。
(4)除法操作符:/ (C使用 / 来表示除法)
/ 左侧的值为被除数,右侧的值为除数。
整数除法和浮点数除法不同。浮点数除法的结果为浮点数,而整数除法的结果为整数。在C语言中,整数除法结果的小数部分被丢弃,这一过程被称为截断。
下面,我们就来运行一段程序,看看这些情况,来体会一下整数除法和浮点数除法的区别吧!
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a = 5 / 4;
int b = 6 / 3;
int c = 7 / 4;
float d = 7.0 / 4.0;
float e = 7 / 4.0;
float f = 7.0 / 4;
printf("%d\n", a);
printf("%d\n", b);
printf("%d\n", c);
printf("%f\n", d);
printf("%f\n", e);
printf("%f\n", f);
return 0;
}
运行结果:
C语言相对其他一些语言而言的话,在类型管理上比较宽容,但尽管如此,一般情况下还是要避免使用混合类型。
(5) 求模操作符:%(用于整数运算)
求模运算符给出它左侧整数除以右侧整数的余数。注意:求模运算符只能用于整数,不能用于浮点数。
咦,突然一看,感觉这个操作符还挺像数学家使用的深奥符号哦,但是,它实际上可非常有用呢,求模操作符可常用于控制程序流。
说了这么多,大家可记得注意哦:
a:除了 % 操作符之外,其他的几个操作符可以作用于整数和浮点数。
b:对于 / 操作符,如果两个操作数都是整数的时候。执行整数除法,当只要有浮点数,那么执行的就是浮点数除法。
赋值操作符
赋值操作符是程序设计中最常用的操作之一。
= += -= *= /= &= ^= |= >>= <<=
=:将其右侧的值赋给左侧的变量;c = a + b 相当于把a + b 的值赋给c;
+= :等号左边加上等号右边并赋值。c += a 相当于 c = c + a;
-=:等号左边减去等号右边并赋值。c -= a 相当于 c = c - a;
*=:等号左边乘以等号右边并赋值。c *= a相当于 c = c * a;
/=:等号左边除以等号右边并赋值。c /= a相当于c = c / a;
&=:等号左边与等号右边进行位与操作并赋值。c &= 2 等同于 c = c & 2;
^=: 等号左边与等号右边进行位异或操作并赋值。c ^= 2 等同于 c = c ^ 2;
|=:等号左边与等号右边进行位或操作并赋值。c |= 2 等同于 c = c | 2;
>>=:将等号左边逻辑右移位等号右边指定的位数并赋值。c >>= 2 等同于 c = c >> 2;
<<=:将等号左边逻辑左移位等号右边指定的位数并赋值。c <<=2 等同于 c = c << 2;
注意:这些操作符都是阻塞操作。
接下来,我们就简单写个例子,让大家对这些赋值运算符有个更好的理解吧
//赋值操作符
int main()
{
int a = 21;
int c;
c = a;
printf("%d\n", c += a);
printf("%d\n", c -= a);
printf("%d\n", c *= a);
printf("%d\n", c /= a);
printf("%d\n", c &= 2);
printf("%d\n", c ^= 2);
printf("%d\n", c |= 2);
printf("%d\n", c >>= 2);
printf("%d\n", c <<= 2);
return 0;
}
当这整段代码被调试执行后,它的运行结果为:
(本篇文章提到了但还没详细讲到的其他运算符,大家稍安勿躁稍安勿躁哦,放心,,后期都会讲到哒!!!)
今天,对算数操作符和赋值操作符的内容就分享到这里啦,希望对大家有帮助!