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

关于运算符,该怎么处理

2012-02-15 
关于运算符老师讲运算符的时候出了题  inta1,b5,cca++*--bc?我说是8因为--或++的运算级别高应该先运

关于运算符
老师讲运算符的时候出了题  
int   a=1,b=5,c;
  c=a++*--b;
c=?
我说是8因为--或++的运算级别高应该先运算在算*
老师说是4
我不明白请问谁能帮我解答啊

[解决办法]
a++*--b

a++和++a
--b和b--

区别开就Ok 了。.
[解决办法]
结果是4,
c=a++*--b相当于,b=b-1;c=a*b;a=a++,
写成代码为:
#include "stdio.h "
void main()
{
int a=1,b=5,c;
c=a++*--b;
printf( "c=%d ",c);
{ int a=1,b=5,c;
b=b-1;c=a*b;a++;printf( "c=%d\n ",c);}

}
[解决办法]
a++*--b;
----------------------
总之,记得,在类似这样的语句里。a还没有加1呢。就是原来的值。

也就是说,a还是1。

执行完这条语句之后,a才是2啊。

[解决办法]
--或++的运算级别高应该先运算在算*,这没错。

但是a++。这东西,在当前语句中,永远没有++。

这就是a++和++a的区别。
++a。立马就加了。
[解决办法]
a++*--b;

a++是先取a的值.所以计算时a是为1

热点排行