66问答网
所有问题
设先有定义:int a=10;则表达式(++a)+(a--)的值为 为啥 a--是11呢
设先有定义: int a=10;则表达式a+=a *a=200 这个为啥是200
举报该问题
其他回答
第1个回答 2016-05-13
a=10;a+=a *a ;a=200 ;
a=a*a=10*10=100;
a+=a;a=a+a=100+100=200;
望采纳~
第2个回答 2016-05-13
先算(++a),a变为11.然后算(a--),因为(a--)是先将a代入计算,然后a减1.所以11加11是22
追问
我主要是不明白为什么a--是11呢 将a带入计算 a=10 10-1 应该是9 啊
相似回答
C的一些题……详细求解!!初学还不会,所以请尽量详细~~谢谢!!
答:
int
a=10
(++a)+(a
--)从左往右看由于外面是+,++a是先做a+=1;然后返回a的值,即经过++a这个运算,a=11(++a
)的值是11
.然后看a--,这个是先返回a的值,然后a-=1,既是,(a--)的值是11,此时a的值是10 那么加好两边,两个
括号的值
就是11+11=22;^^ 3.有如下程序 includ...
int
a=10
(++a)+(a
--
)的值
答:
a = 10
(++a) + (a
--
) 的值是
22
设先有定义:int
a=10;则表达式(++a)+(a
--
)的值为什么是
22?
答:
这个
表达式
将a的值改变了两次,中间没有明确的序点,是一种未定义行为 有的编译器得到22,是因为编译器把这段代码编译成了以下形式:;
int
a = 10;
movsi,10;
(++a) + (a
--)incsimovax,simovdx,sidecsiaddax,dxpushax
int
a=10;
int b= a
++
; system.out.print
(a)
;. system.out.print...
答:
a++的顺序是,先使用值,再计算,所以代码可以解析为
:int
a=10;
int b=a;a=a+1;所以a值为11,b为10,如果用b=
++a;则
a,b
都是11
设int+a=10
,则执行printf(“%d\n”,
++a)
后输出的结果
为什么
?
答:
int+a=10
是存在错误的 我假设你是在定义变量
a = 10
那么输出结果应该
是11
,因为
++a的
意思就是在调用该变量值的时候,需要先对其进行加1
若已
定义int
a,
则表达式a=10
,a+10,a
++的值为
答:
答案为10。解题过程如下
:a=10
,a+10,a
++是
一个逗号表达式,逗号表达式的规则是什么第一表达式计算起,直到计算最后一个表达式,最后一个表达式的值是逗号表达式的值。先计算a=10,值等于10,变量a也被赋10的值。再计算a+10,的值为20.最后计算a++得值为10,a得值为
11
.但整个
表达式的值为
10。
大家正在搜
设数组a的定义为:int
设变量定义为int a b
设有定义语句 int a
设有变量定义int a
设有以下变量定义float a
设数组a的定义为
设已有定义float x
设a为整型变量 初值为12
设有定义int