074.K阶斐波那契序列

简介: 074.K阶斐波那契序列
#include <stdio.h>
#include <stdlib.h>
#define  enoughsize 100  //最大队列长度
typedef struct 
{
  int *base;     //初始化的动态分配存储空间
  int front;      //头指针,若队列不空,指向队列头元素
  int rear;      //尾指针,若队列不空,指向队列尾元素的下一个位置
}SqQueue;
int AddSum(int n,int *q)
{
  int sum=0;
  int i;
  for(i=0;i<n;i++)  sum+=q[i];
  return sum;
}
void main()
{
  SqQueue Q;
  int k,max,i,n,*store;
  printf("请输入斐波那奇的阶数:");
  scanf("%d",&k);
  printf("请输入序列中允许的最大数:");
  scanf("%d",&max);
  Q.base=(int*)malloc(k*sizeof(int));
  store=(int*)malloc(enoughsize*sizeof(int));
  if((!Q.base)||(!store))
  {
    printf("Error!");
    return;
  }
  for(i=0;i<k;i++)
  {
    store[i]=0;
    Q.base[i]=0;
  }
  store[k-1]=1;
  Q.base[k-1]=1;   //初始化fib序列
  store[k]=AddSum(k,Q.base);
  Q.front=0;
  Q.rear=k-1;
  n=k;
  while(store[n]<=max)
  {
    Q.rear=(Q.rear+1)%k;
    Q.base[Q.rear]=store[n];
    n++;
    store[n]=AddSum(k,Q.base);
  }
  printf("The first %d%s%d%c%s",n," numbers are less than ",max,'.',"\n");
  printf("The numbers are:\n");
  for(i=0;i<n;i++)  printf("%d%c",store[i],' ');
  printf("\n");
}
相关文章
|
弹性计算 Linux 开发者
阿里云服务器2核2G价格参考,轻量应用服务器108元经济型e实例182.04元
阿里云2核2G云服务器多少钱?如果你选择轻量应用服务器的话,目前活动价格最低是108元1年,如果你选择云服务器ECS的话,目前活动价格最低的是经济型e实例的云服务器,活动价格最低为182.04元。两款云服务器价格都非常便宜,本文为大家分析一下我们应该选择哪一款。
阿里云服务器2核2G价格参考,轻量应用服务器108元经济型e实例182.04元
|
编解码 索引
gopher 初探
gopher 初探
308 0
|
Docker 容器 应用服务中间件
Docker容器日志
docker容器在运行时,会持续不断地产生日志,这些日志在什么地方,如何查看和管理这些日志呢? 1、查看docker日志 docker logs 容器ID #此时会看到很多的日志输出出来,(如果容器运行时间比较久的话) 对应在/var/lib/docker/containers目录下,每个容器ID.
1927 0
|
5天前
|
云安全 人工智能 安全
AI被攻击怎么办?
阿里云提供 AI 全栈安全能力,其中对网络攻击的主动识别、智能阻断与快速响应构成其核心防线,依托原生安全防护为客户筑牢免疫屏障。
|
15天前
|
域名解析 人工智能
【实操攻略】手把手教学,免费领取.CN域名
即日起至2025年12月31日,购买万小智AI建站或云·企业官网,每单可免费领1个.CN域名首年!跟我了解领取攻略吧~
|
9天前
|
安全 Java Android开发
深度解析 Android 崩溃捕获原理及从崩溃到归因的闭环实践
崩溃堆栈全是 a.b.c?Native 错误查不到行号?本文详解 Android 崩溃采集全链路原理,教你如何把“天书”变“说明书”。RUM SDK 已支持一键接入。
589 212
|
4天前
|
编解码 Linux 数据安全/隐私保护
教程分享免费视频压缩软件,免费视频压缩,视频压缩免费,附压缩方法及学习教程
教程分享免费视频压缩软件,免费视频压缩,视频压缩免费,附压缩方法及学习教程
233 138