c语言中a-=a是什么意思

c语言中a-=a是什么意思... c语言中a-=a是什么意思 展开
 我来答
百度网友ca560fe
2019-10-30 · TA获得超过2.3万个赞
知道答主
回答量:70
采纳率:100%
帮助的人:2.9万
展开全部

a-=a的意思为a=a-a,先用a减a,然后再将得到的结果赋值给a。-=实际上是一种缩写形式,使得对变量的改变更为简洁。

运算时,可以将其写成熟悉的形式,从右向左依次计算,注意在每次计算时,变量的值会发生改变, 如不注意,就会导致错误的情况发生。

扩展资料:

复合赋值运算符有下列这些:

符号 功能

+= 加法赋值

-= 减法赋值

*= 乘法赋值

/= 除法赋值

%= 模运算赋值

<<= 左移赋值

>>= 右移赋值

&= 位逻辑与赋值

|= 位逻辑或赋值

^= 位逻辑异或赋值

参考资料来源百度百科-复合赋值运算符

百度网友2c42cd0
2018-07-02 · TA获得超过5859个赞
知道小有建树答主
回答量:88
采纳率:83%
帮助的人:1.3万
展开全部
2a-a²
具体计算步骤如下:
1、公式拆分,按照C语言计算方法和原则,这里的“=”意思是赋值,即将等号右边的数值赋值到左边去。
所以公式可以依次拆分为
(1)a1=a*a
(2)a2=a-a1
(3)a3=a2+a
a是原来的赋值
2、以此计算原来的(1)(2)(3)式

结果为2a-a²
拓展资料:
C语言中计算或者赋值式是从右往左进行计算,但是计算具有一定的优先级,以下是对优先级的分类:
1、最高级
出现同级别运算符时的结合方向是从左往右(下面级别没写结合顺序时,默认是从左往右)。
( )圆括号
[ ]下标运算符号
->指向结构体成员运算符
.结构体成员运算符
2、第二级
!、~、++、--、-、(类型)、*、&、sizeof。
这一级都是单目运算符号,这一级的结合方向是从右向左。
比如出现*p++,这时*和++同级别,先算右边,再左边。
所以*p++等价于*(p++),而不是(*p)++。
3、第三级
+、-、*、/、%
这一级都是算术运算符,结合顺序和数学学习中一致的,先乘除取余数,后加减。
4、第四级
<<、>>
这是左移、右移运算符,位运算时可能需要用到。
5、第五级
<、<=、>、>=、!=、==
这些运算符也称为关系运算符,其中<、<=、>、>=高于!=、==。
6、第六级
&、^、|
这三个符号也是位运算符号,其中内优先级,&>^>|。
7、第七级
&&、||
逻辑与&&优先级大于逻辑或||。
8、第八级
? :
也称为条件运算符号,是C语言中唯一的一个三目运算符,结合顺序是从右往左。
9、第九级
=、+=、-+、*=、/=、%=
这些运算符也叫做赋值运算符,除此之外,>>=、<<=、&=、^=、|=这些赋值运算符也在这一级别内,结合顺序是从右往左。
10、最低级


逗号运算符也称为顺序求值运算符,在C语言中,运算级别最低。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
千日一里寻真理
2016-10-11 · TA获得超过215个赞
知道小有建树答主
回答量:877
采纳率:0%
帮助的人:153万
展开全部
主要的区别前两个是电磁感应,第三个是电磁共振。电磁共振效率低但可以实现距离比较远(通常也只是在几米内有实用价值),电磁感应的有效距离则是以感应线圈直径来衡量的,基本等同于必须紧贴上。
同样是电磁感应的PLA和Qi主要区别在于PLA是利用现有的配件在电池上做文章,因此每一部手机都可以通过PLA实现无线充电,而Qi则是直接出场时就集成在手机内部了。
而电磁共振和电磁感应这两种技术的区别其实非常小,可以说电磁共振是一种电磁感应的扩展应用,基本原理是相同的,这两种标准的差异更多的不是在技术层面而是在专利授权的方面。因此A4WP出现的根本因素是因为前二者标准的专利垄断。至于参数,无实验不可能得到,做过实验而得到数据的人他的研究成果也是有版权的不可能无偿提供给公众,既然是专利如果这些东西大家都知道而不用花钱的话A4WP也就根本不会出现了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
碧血玉叶花
2015-07-14 · TA获得超过4976个赞
知道大有可为答主
回答量:6154
采纳率:0%
帮助的人:1652万
展开全部

如果你仅仅是求答案,感觉非常失望,我希望在看过答案之后你能够有所思考!其实该问题的关键在于怎样去定义一个阶乘函数,把这个搞清楚了,就解决大问题了,其次是怎样在主函数中调用函数!

#include<iostream.h>
int fac(int n)
{
 int s=1;
 int i;
 for(i=1;i<=n;i++)
  s*=i;
 cout<<n<<"的阶乘是"<<s<<endl;
 return s;
}
void main()
{
 int a,b,c,temp;
 cin>>a>>b>>c;
 fac(a);
 fac(b);
 fac(c);
 temp=fac(a)+fac(b)+fac(c);
 cout<<temp<<endl;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
豆广英归娟
2020-01-24 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.4万
采纳率:26%
帮助的人:754万
展开全部
从右往左计算,先算a*=a,意思是a=a*a,这样,a的值被改写,然后计算a-=a,把重新被改写的值代入,a=a-a,a值又被改写,在把改写后的值赋给a,结果为0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(33)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式