为了账号安全,请及时绑定邮箱和手机立即绑定

请教下在for循环几次?

请教下在for循环几次?

DIEA 2023-01-03 17:13:50

#include<stdio.h>

int foo(int n){
int i;

if(n<3)
return 1;
for(i=0;i<n;i++){

printf("%d\n",foo(n-1)+foo(n-2)); 
return foo(n-1)+foo(n-2);
}

}
int main(){ 

printf("foo;%d\n",foo(2));

return 0;

}

查看完整描述

2 回答

?
慕码人8056858

TA贡献1548条经验 获得超6个赞

最后输入1?

查看完整回答
反对 回复 2023-01-06
?
回首忆惘然

TA贡献1622条经验 获得超10个赞

你这程序是用来计算菲波那契数列第n项值的。不过你的主程序指定只要输出第2项,导致程序就只输出1。
改了一下,你试一下:

#include<stdio.h>

int foo(int n){
int i;

if(n<3)
return 1;
for(i=0;i<n;i++){
return foo(n-1)+foo(n-2);

}

}
int main(){
int n,i;
scanf("%d",&n);
for(i=1;i<=n;i++)
printf("foo(%d)=%d\n",i,foo(i));
return 0;

}


查看完整回答
反对 回复 2023-01-06

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信