求大神帮我看看,啊啊啊啊啊啊啊

猪都笑哭了 2018-02-02 11:42:04
健健作为九州通工作室的老大,虽然没有女朋友,但是对于数字特别敏感,他信奉钱生钱的道理。假如他有一个能生钱口袋,那么他第一天往口袋里放入1元,第二天口袋里的钱变成了2元,第三天口袋里的钱为第一天的钱和第二天钱的和,为3元,第四天为第三天和第二天所拥有钱的和,为5元,之后的每一天口袋里的钱都为前两天的钱的和。我们假设这个口袋到了三十天后就不会再生钱了。
#include<stdio.h>
int main()
{

int i,j;
int a[3];
int b[100];
b[0]=1;
b[1]=2;
for(i=0;i<3;i++)
scanf("%d",&a[i]);
for(i=0;i<3;i++){
for(j=2;j<a[i];j++)
b[j]=b[j-1]+b[j-2];
printf("%d\n",b[j]);}
}


代码哪里错了,一直编不出正确答案,求大神
...全文
760 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
StaroForgin 2018-02-02
  • 打赏
  • 举报
回复
输入输出样例有没有?
hondely 2018-02-02
  • 打赏
  • 举报
回复
引用 2 楼 cfjtaishan 的回复:
#include<stdio.h>
int main()
{

    int i,j;
    int a[3];
    int b[100];

    b[0]=1;
    b[1]=2;

    for(i=0;i<3;i++)
        scanf("%d",&a[i]);
    for(i=0;i<3;i++){
        for(j=2;j<a[i];j++) {
            b[j]=b[j-1]+b[j-2];
            printf("No.%d = %d\n", j + 1, b[j]);
        }
        printf("::%d\n",b[j-1]);   /*此处用j-1,因为第二层循环里,j是j++后跳出循环的,所以输出时应该是是j-1*/
    }
}
参考一下吧 原因详见上面代码注释
正解 可以不用遍历 用数学表达式求
super_admi 2018-02-02
  • 打赏
  • 举报
回复
这不就是斐波那契数列吗?小样,换个马甲我就不认识你了?
自信男孩 2018-02-02
  • 打赏
  • 举报
回复
#include<stdio.h>
int main()
{

    int i,j;
    int a[3];
    int b[100];

    b[0]=1;
    b[1]=2;

    for(i=0;i<3;i++)
        scanf("%d",&a[i]);
    for(i=0;i<3;i++){
        for(j=2;j<a[i];j++) {
            b[j]=b[j-1]+b[j-2];
            printf("No.%d = %d\n", j + 1, b[j]);
        }
        printf("::%d\n",b[j-1]);   /*此处用j-1,因为第二层循环里,j是j++后跳出循环的,所以输出时应该是是j-1*/
    }
}
参考一下吧 原因详见上面代码注释

69,369

社区成员

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

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