当前位置: 代码迷 >> C语言 >> [求助]这个程序怎么解啊?要过程
  详细解决方案

[求助]这个程序怎么解啊?要过程

热度:118   发布时间:2005-12-08 10:06:00.0
[求助]这个程序怎么解啊?要过程
程序如下:
#define f(x) x*X
main()
{
int i;
i=f(4+4)/f(2+2);
printf("%d\n",i);
}


TURBO C 上运行得28
我们老师说例题答案的4~~~不知哪个对~~~请高手帮帮忙
顺便把计算过程写下~~~小弟拜谢~~~
搜索更多相关的解决方案: 计算  

----------------解决方案--------------------------------------------------------
i展开是这样的
4+4*4+4/2+2*2+2
你们老师错了
----------------解决方案--------------------------------------------------------
恩~~我看明白拉~~~~~不过我们老师说她那是题库的题~~~
还说要用数学的解法~~~呵呵~~~~有时间去问问她先~~~
----------------解决方案--------------------------------------------------------

再看看这个,想想为什么?
#define f(x) x*x
main()
{
int i;
i=f((4+4))/f((2+2));
printf("%d\n",i);
}


----------------解决方案--------------------------------------------------------
我想应该是4吧~~
----------------解决方案--------------------------------------------------------
以下是引用maoguoqing在2005-12-8 10:31:00的发言:
i展开是这样的
4+4*4+4/2+2*2+2
你们老师错了

为什么会是这样展开呀,可否再说的仔细些


----------------解决方案--------------------------------------------------------
#define f(x) x*x
关键在这里
你把f(4+4)括号中的4+4完完全全直接带入x*x就得到
4+4*4+4
同理.2+2*2+2也是那么来的
故整个合起来就是'
// 4+4*4+4/2+2*2+2 = 28

----------------解决方案--------------------------------------------------------
感谢7楼的详细分析~~~~~我感谢帮助过我的人~~~
希望他们身体健康、万事如意~~~
----------------解决方案--------------------------------------------------------
3q
----------------解决方案--------------------------------------------------------
你们老师错了。她把预处理命令当申明变量在用了!
----------------解决方案--------------------------------------------------------
  相关解决方案