|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
C++论坛
→
『 C++教室 』
→ 大家来看看 这该怎么解释
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
850
人关注过本帖
标题:
大家来看看 这该怎么解释
只看楼主
加入收藏
Y08M09D26
等 级:
论坛游民
帖 子:118
专家分:13
注 册:2008-9-26
结帖率:
100%
楼主
收藏
问题点数:0 回复次数:6
大家来看看 这该怎么解释
int
func(int i,int n)
{
return (i<n && printf("%d\n",i)) && !func(i+1,n)
|| printf("%d\n",i);
}
这函数怎么来解释?
搜索更多相关主题的帖子:
解释
2008-10-31 14:36
举报帖子
使用道具
赠送鲜花
lockhawk
等 级:
新手上路
帖 子:94
专家分:0
注 册:2008-9-17
第
2
楼
收藏
得分:0
返回的是一个关系表达式,结果是1或0。应该用bool型才对?
人生最大痛苦:虽然不明白你们说什么,但还是要听!
2008-10-31 18:46
举报帖子
使用道具
赠送鲜花
youhm
等 级:
新手上路
帖 子:86
专家分:0
注 册:2006-5-25
第
3
楼
收藏
得分:0
呵呵,楼主从哪儿搞来的,是不是VBGOOD,这个是递归输出数字从i到n再到i
2008-10-31 19:14
举报帖子
使用道具
赠送鲜花
ling121211
等 级:
新手上路
帖 子:10
专家分:0
注 册:2008-10-23
第
4
楼
收藏
得分:0
你这里的func()函数的返回值用int没问题。
函数的工作如下:
当i= 1时,先执行i<n;成立则输出i;然后去调用!func(i+1,n),同样先判断i<n是否成立,成立则输出i+1;
然后去调用!func(i+1,n),不停的递归调用。
当i=8时,先执行i<n;成立则输出i;然后去调用!func(i+1,n);此事!func(9,9),i<n不成立,故执行||后面的printf语句。然后返回到当i=8时栈空间,去执行||后面的printf()语句。
2008-10-31 23:45
举报帖子
使用道具
赠送鲜花
Y08M09D26
等 级:
论坛游民
帖 子:118
专家分:13
注 册:2008-9-26
第
5
楼
收藏
得分:0
原来是这回事 啊
谢谢各位啦
2008-11-03 17:12
举报帖子
使用道具
赠送鲜花
sunkaidong
来 自:南京师范大学
等 级:
贵宾
威 望:
12
帖 子:4496
专家分:141
注 册:2006-12-28
第
6
楼
收藏
得分:0
这是个递归程序..前半句是递推后半句是回归..应该注意到这个表达式在什么时候返回的都是1
(i<n && printf("%d\n",i)) && !func(i+1,n)
|| printf("%d\n",i);
只有都是1的时候才会执行||后面这个打印..
学习需要安静。。海盗要重新来过。。
2008-11-03 20:20
举报帖子
使用道具
赠送鲜花
SuperPanda
等 级:
新手上路
帖 子:8
专家分:0
注 册:2008-10-8
第
7
楼
收藏
得分:0
你先搞清楚&/ !的优先级应该就可以了吧
2008-11-03 22:24
举报帖子
使用道具
赠送鲜花
7
1/1页
1
快速回复:
大家来看看 这该怎么解释
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.018516 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved