主题:递归问题···高手看看啊
MJJ1990 [专家分:0] 发布于 2010-11-01 22:40:00
#include"iostream.h"
float f(float a[],int i)
{float m;
if(i==0) return a[0];
else
{m=f(a,i-1);
if(m>a[i])
return(a[i]);
else
return(m);
}
}
void main()
{int i;
float a[6];
for(i=0;i<6;i++)
{cin>>a[i];}
f(a,i);
cout<<a<<endl;
}
怎么实现不了啊
回复列表 (共9个回复)
沙发
dinghao517 [专家分:20] 发布于 2010-11-01 22:53:00
你的目的是什么,先说明白
板凳
MJJ1990 [专家分:0] 发布于 2010-11-01 22:57:00
求数组中最小的数值 利用递归
3 楼
josephkwok [专家分:530] 发布于 2010-11-02 00:00:00
改1个地方,至于为什么这样改,自己想想吧:
f(a,i);
cout<<a<<endl;
改为
cout<<f(a,5)<<endl;
4 楼
MJJ1990 [专家分:0] 发布于 2010-11-02 09:47:00
多谢了哈 我输出了地址了呀···
5 楼
josephkwok [专家分:530] 发布于 2010-11-02 18:30:00
不只是一个问题...
6 楼
MJJ1990 [专家分:0] 发布于 2010-11-02 18:43:00
[quote]不只是一个问题...[/quote]
还有啥毛病?
7 楼
josephkwok [专家分:530] 发布于 2010-11-02 19:28:00
f(a,6)输出会有问题,f(a,5)则不会
8 楼
bug_yang [专家分:0] 发布于 2010-11-02 19:47:00
mark
9 楼
MJJ1990 [专家分:0] 发布于 2010-11-02 20:35:00
你指的是越界吧
我来回复