| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1162 人关注过本帖
标题:求助,一道面试题
取消只看楼主 加入收藏
天字第一耗
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-11-27
收藏
 问题点数:0 回复次数:10 
求助,一道面试题

public int sum(int a[],int n){
return n>0_______________;
}



在横线上填一句话,要求返回数组的前n项和......
据说是很简单的一个语句,不是if,for这些......

俺楞是没想出来......

搜索更多相关主题的帖子: 面试 
2006-11-27 21:37
天字第一耗
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-11-27
收藏
得分:0 

返回值是int,但是题目上给了一个boolean,咋办涅?


2006-11-27 21:45
天字第一耗
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-11-27
收藏
得分:0 

貌似报错了...


2006-11-27 21:57
天字第一耗
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-11-27
收藏
得分:0 

递归应该是对的,但是语法上不知道该怎么写...


2006-11-27 21:57
天字第一耗
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-11-27
收藏
得分:0 

感谢提醒....居然忘记了条件运算符...


2006-11-27 22:06
天字第一耗
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-11-27
收藏
得分:0 
public int sum(int a[],int n){
return n>0?a[n]+a[n-1]:0;
}

ok老

2006-11-27 22:15
天字第一耗
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-11-27
收藏
得分:0 

确实,不过倒是没有溢出,unicorn说的是对的, 只是计算了后两项和......


2006-11-27 22:45
天字第一耗
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-11-27
收藏
得分:0 
再请教下
public int sum(int a[],int n){
return n>0?sum(a,n-2)+sum(a,n-1):0;
}

改成这样以后,如果最后分号前面是0,结果是0,如果是其他任何大于0的整数a,结果则是最后两项的和*a,为什么呢?

2006-11-27 23:25
天字第一耗
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-11-27
收藏
得分:0 
也就是说即使前面n>0的值为true,最后的返回值也被乘了分号前面的表达式...

手头上能找到的资料中对?:这个运算符介绍的都比较少,茫然中...

2006-11-27 23:35
天字第一耗
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-11-27
收藏
得分:0 

对啊,按说应该是这样的,但是我13楼那段,在n>0为false时能正确执行expB,但是在为true时,执行的结果是expA*expB...


2006-11-28 10:13
快速回复:求助,一道面试题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.061258 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved