斐波那契数列代码。

z569362161 2009-12-24 10:56:33
前几天看到了几个作业帖子要代码。

没回。到现在作业应该结束了。

献给认真学习的同学一起研究。

#include <stdio.h>
int main(void)
{ f1=1,f2=1,f,i,n;
scanf("%d",&n);
printf("%d,%d,",f1,f2);
for(i=3;i<=n;i++)
{
f=f1+f2;
if(i==n)
printf("%ld.\n",f);
else
printf("%ld,",f);
f1=f2;
f2=f;
}
return 0;
}
闲的没事做,学习好没意思啊1
...全文
323 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
Fleeboy 2009-12-25
  • 打赏
  • 举报
回复
这篇文章有点意思:
http://blog.csdn.net/pathuang68/archive/2009/05/06/4153250.aspx
代码是用Java写的,不过翻译成C++应该不难
do_fork 2009-12-24
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 mstlq 的回复:]
引用 8 楼 do_fork 的回复:
C/C++ code#include <stdio.h>int main()
{int n, a=1, b=1, t;
        scanf("%d",&n);for(; n--; a=b,b+=t)
                printf(n?"%d,":"%d\n", t=a);
}

何不再减一行?

#include <stdio.h>
int main()
{int n, a=1, b=1, t;
        for(scanf("%d",&n); n-- !=0; a=b,b+=t)
                printf(n?"%d,":"%d\n", t=a);
}
[/Quote]

我不喜欢gnu那种代码风格
mstlq 2009-12-24
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 do_fork 的回复:]
C/C++ code#include<stdio.h>int main()
{int n, a=1, b=1, t;
scanf("%d",&n);for(; n--; a=b,b+=t)
printf(n?"%d,":"%d\n", t=a);
}
[/Quote]
何不再减一行?

#include<stdio.h>
int main()
{int n, a=1, b=1, t;
for(scanf("%d",&n); n-- !=0; a=b,b+=t)
printf(n?"%d,":"%d\n", t=a);
}
z569362161 2009-12-24
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 do_fork 的回复:]
C/C++ code#include<stdio.h>int main()
{int n, a=1, b=1, t;
scanf("%d",&n);for(; n--; a=b,b+=t)
printf(n?"%d,":"%d\n", t=a);
}
[/Quote]

你们是来气我的啊
do_fork 2009-12-24
  • 打赏
  • 举报
回复
#include <stdio.h>

int main()
{
int n, a=1, b=1, t;
scanf("%d", &n);
for(; n--; a=b,b+=t)
printf(n?"%d, ":"%d\n", t=a);
}
z569362161 2009-12-24
  • 打赏
  • 举报
回复
模板元编程技术并非都是优点,模板元程序编译耗时,带有模板元程序的程序生成的代码尺寸要比普通程序的大,而且通常这种程序调试起来也比常规程序困难得多。另外,以类模板的方式描述算法也许抽象。
mstlq 2009-12-24
  • 打赏
  • 举报
回复
写那么长干什么?

#include <stdio.h>
int main(void)
{
int f1=1,f2=1,i,n;
scanf("%d",&n);
printf("%d,%d,",f1,f2);
for (i=3;i <=n; ++i,f1=f2-f1) printf("%ld,",f2+=f1);
puts("\b \n");
return 0;
}
机智的呆呆 2009-12-24
  • 打赏
  • 举报
回复
像这样正整数递归的,都可以考虑用模板元编程的~~~
z569362161 2009-12-24
  • 打赏
  • 举报
回复
还是不行啊
z569362161 2009-12-24
  • 打赏
  • 举报
回复
#include <stdio.h>
int main(void)
{ long f1=1,f2=1,f,i,n;
scanf("%d",&n);
printf("%d,%d,",f1,f2);
for(i=3;i<=n;i++)
{
f=f1+f2;
if(i==n)
printf("%ld.\n",f);
else
printf("%ld,",f);
f1=f2;
f2=f;
}
return 0;
phpjspasp 2009-12-24
  • 打赏
  • 举报
回复

#include <stdio.h>
int main(void)
{
int f1=1,f2=1,f,i,n;
scanf("%d",&n);
printf("%d,%d,",f1,f2);
for (i=3;i <=n;i++)
{
f=f1+f2;
if (i==n)
printf("%ld.\n",f);
else
printf("%ld,",f);
f1=f2;
f2=f;
}
return 0;
}

z569362161 2009-12-24
  • 打赏
  • 举报
回复
晕,代码又对齐了。

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧