标题:关于Fibonacci数列的问题中的return的使用?
只看楼主
wuyi5630
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2006-5-11
 问题点数:0 回复次数:6 
关于Fibonacci数列的问题中的return的使用?

编写函数jsValue,它的功能是:求Fibonacci数列中大于t的最小的一个数,结果由函数返回。其中Fibonacci数列F(n)的定义为:
F(0)=0,F(1)=1
F(n)=F(n-1)+F(n-2)
最后调用函数writeDat()读取50个数据t,分别得出结果且把结果输出到文件out.dat中。
例如:当t=1000时,函数值为:1597。
部分源程序存在文件prog1.c中。
请勿改动主函数main()和写函数writeDat()的内容。
#include <stdio.h>

int jsValue(int t)
{ int f0=0,f1=1,fn;
fn=f0+f1;
while(fn<=t)
{ f0=f1;
f1=fn;
fn=f0+f1;
}
return fn;
}

main()
{
int n;
n=1000;
printf("n=%d,f=%d\n",n,jsValue(n));
writeDat();
}

writeDat()
{
FILE *in,*out;
int i,n,s;

in=fopen("in.dat","r");
out=fopen("out.dat","w");
for(i=0;i<50;i++){
fscanf(in,"%d",&n);
s=jsValue(n);
printf("%d\n",s);
fprintf(out,"%d\n",s);
}
fclose(in);
fclose(out);
}

大家注意到没有那个return fn;要与不要都可以呀,都可以运行得出相同的结果;------这个我就看不明白了,两种答案都可以吗???

搜索更多相关主题的帖子: Fibonacci return 函数 int jsValue 
2007-04-09 22:46
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 
函数里不返回数据,主函数怎么接收函数调用的结果.

倚天照海花无数,流水高山心自知。
2007-04-09 23:28
wuyi5630
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2006-5-11
得分:0 

#include <stdio.h>

int jsValue(int t)
{ int f0=0,f1=1,fn;
fn=f0+f1;
while(fn<=t)
{ f0=f1;
f1=fn;
fn=f0+f1;
}
}

main()
{
int n;
n=1000;
printf("n=%d,f=%d\n",n,jsValue(n));
}
就是呀,我也很纳闷,函数里不返回数据,主函数怎么接收函数调用的结果?可是象上面这个没有return,也能得出结果来;
这算不算C语言的语法漏洞呀?????
大家把这段代码复制一下用tc打开看看.

2007-04-10 13:17
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
得分:0 

这不能说是漏洞,可能TC太强大了,不过我觉得过时了,用别的编译器,编译都能不过


雁无留踪之意,水无取影之心
2007-04-10 13:36
zhutengfei28
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-4-10
得分:0 

我也调试了一下 ,和你们的结果一样!!!

可能是系统默认的返回最后一个变量的植吧!!

只是猜测而已!!!

2007-04-10 15:11
wuyi5630
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2006-5-11
得分:0 
还有什么其他可能呢?
2007-04-10 19:37
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
得分:0 
这个就不知道啊,不知道为什么没有返回值就可以返回了啊.有高手可以解释一下吗?

学习需要安静。。海盗要重新来过。。
2007-04-12 08:45



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-130540-1-1.html




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

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