首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

++、演算

2012-09-08 
++、--运算#include stdio.h#include math.hint main(){int x4,y25,z2z(--y/++x)*z--printf(%d%

++、--运算

 #include "stdio.h"
 #include "math.h"
  int main()
 {
  int x=4,y=25,z=2;
  z=(--y/++x)*z--;
  printf("%d%d%d",x,y,z);
  return 0;
   
 }
输出是:5247

#include "stdio.h"
#include "math.h"
 int main()
 {
  int x=4,y=25,z=2,t;
  t=z=(--y/++x)*z--;
  printf("%d%d%d%d",t,x,y,z);
  return 0;
   
 }
输出是:85247

为什么多赋值一次就+1了呢?

[解决办法]
相等于,z=8;,t=z--;所以运算后z=7,t=8;
[解决办法]
这个你可以这么了解,
在基于表达式的运算中,可分为“计算”和“自增减”两部分,++i是先自增后计算
i++是表达式“计算”结束后才“自增减”。
t=z=(--y/++x)*z--;
这个表达式的“计算部分”结束后,t=z=8,然后开始z--进行“自增减”,所以t=8,z=7.

热点排行