帮忙看下这个题怎么解?

shenming125 2005-09-09 10:11:23
程序通过提示“Please enter a number:”接受用户输入的整数n,如果n是正整数,则给出Fibonacci系列的前n个数;否则退出程序!~

小弟刚学C不久,对算法了解甚少,所以解题常常不得思路,望各位高手多多提点。
...全文
174 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wdchxzh 2005-09-11
  • 打赏
  • 举报
回复
/*照书抄,加几个控制语句,控制输出的个数.*/
#include<stdio.h>

main()
{
int n ;
printf("Please enter a number:");
scanf("%d", &n);
if(n>0){
int a,b,c,count=0;
b=1;
for( a=1 ; count<n; )
{
printf("%5ld",a);

a=a+b;count++;

if(count>=n) continue;

printf("%5ld",a);
printf("\n");

b=a+b;count++;

}
}

}
Basin_Fish 2005-09-11
  • 打赏
  • 举报
回复
先定义a[0],a[1],i(0)
然后while((i++)<n)
a[i]=a[i-1]+a[i-2];


Leaveye 2005-09-11
  • 打赏
  • 举报
回复
void main()
{
int n;
unsigned long curr, next1, next2;

printf("Please enter a number: ");
scanf("%d", &n);
if(n > 0) {
printf("Fibonacci numbers :", n);
for(curr = next1 = 1, next2 = 2 ; n--; ) {
printf(" %lu", curr);
curr = next1, next = next2, next2 += curr;
}
printf(" (leading %d)\n");
} else {
printf("%d is negative number.\n");
}
}
shenming125 2005-09-11
  • 打赏
  • 举报
回复
谁给帮帮忙啊~~~~~~~~~~

感激不尽
shenming125 2005-09-10
  • 打赏
  • 举报
回复
不用函数,指针,数组,这些都是后边学的,我只想用if,while,for等等最简单的语句写
最好是用for写,我想看看循环在这个题里怎么用!!!

谢谢楼上几位
snowbirdfly 2005-09-09
  • 打赏
  • 举报
回复
那就写个函数实现~~
只要自己输入N,并将N传入到函数里面就可以了~~
Fibonacci函数你应该会写吧~~
只要scanf("%d",&n);
zsh6709 2005-09-09
  • 打赏
  • 举报
回复
#include<stdio.h>
main()
{
long a,b;
int x;a=1;b=1;
for(x=1;x<=20;x++)
{
printf("%16ld%16ld",a,b);
if(x%2==0) //即每四个数字为一行
printf("\n");
a=b+a;
b=a+b;
}
}

//那就用这个 做法吧
shenming125 2005-09-09
  • 打赏
  • 举报
回复
哦,sorry,我疏忽了,请不要用数组、指针等概念。。。因为还没学到。。。
用条件、循环怎么做呢???

我会做Fibonacci系列的题,可是,在不确定n的情况下,怎么来做呢???
loveliu0429 2005-09-09
  • 打赏
  • 举报
回复
if(n>0){
a[0],a[1]先定义
然后for(i=2;i<n;i++)
a[i]=a[i-1]+a[i-2];}
else Error;

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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