a=-12。
赋值语句,从右到左依次运行:
那么:int a=3;
a+=a-=a*a;
相当于:
1.a-=a*a;
2.a+=a;
相当于:
1.a=a-a*a;
2.a=a+a;
由于a初始化为3:
1.a=a-a*a=3-3*3=-6;
2.a=a+a=-6+(-6)==-12;
扩展资料:
先计算a*a=9,此时a=3,没变。a的最终值为-12。
a的最终值为-12。#include
intmain()
{
inta,min,max,mid;/*定义变量*/
scanf("%d%d%d"&a,&b,&c);/*读取输入变量*/
min=a
/*取最小值.a
小值.是则min=a;否则运算b
max=a>b&&a>a:(b>b:c);
mid=a+b+c-min-max;
printf("mintomax:%d%d%d\n"min,mid,max);
return0;
}。
赋值语句,从右到左依次运行:
那么:int a=3;
a+=a-=a*a;
相当于:
1.a-=a*a;
2.a+=a;
然后相当于:
1.a=a-a*a;
2.a=a+a;
由于a初始化为3:
1.a=a-a*a=3-3*3=-6;
2.a=a+a=-6+(-6)==-12;
所以最后结果就是-12
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
C语言赋值语句从右往左开始算,下面是赋值运算符的优先级:
a为-12。
分析:+=和-=运算符会计算符号右边的表达式值,加(减)到左边的变量后返回该变量的引用,因此该表达式应该分解为:
a-=a*a,相当于a-=9,得到a=-6。此时返回了a的引用;
a+=a,此时a=-6,算完后a=-12。
因此最后a的值应该为-12。
实际测试图:
扩展资料:
算术自反赋值运算符,包括加赋值+=、减赋值-=、乘赋值*=、除赋值/=、模赋值%=等。运算符左侧运算对象为是变量,右侧运算对象为表达式。其计算方式是计算右侧表达式后,和左侧变量进行相应运算,将结果赋给左侧变量。
先计算a*a=9,此时a=3,没变。a的最终值为-12。
a的最终值为-12。#include
intmain()
{
inta,min,max,mid;/*定义变量*/
scanf("%d%d%d"&a,&b,&c);/*读取输入变量*/
min=a
/*取最小值.a
小值.是则min=a;否则运算b
max=a>b&&a>a:(b>b:c);
mid=a+b+c-min-max;
printf("mintomax:%d%d%d\n"min,mid,max);
return0;
}。
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
c语言中,计算的顺序,大多是从右向左的.
上机试之后,结果总是0;
#include
using namespace std;
int main()
{
double a;
cout
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。