首页 > 解决方案 > 使用 c 查找斐波那契中的第 n 个数字

问题描述

这个任务是找到 n 个数的 fibanocci。任务: 1.找到 n 个数的斐波那契。2.使用变量n,first=0,second=1,next,c。输入格式:使用 printf 语句。使用 scanf 获取数字 n。使用 FOR 循环。使用 IF....ELSE 循环语句。输出格式:使用 printf 语句打印输出 SAMPLE INPUT: 2 SAMPLE OUTPUT: 3(From HackerRank)

我尝试在上面解决,但他们要求输入 2 输出应该是 3 但他们还要求输入 1 上的输出 01。你能告诉我如何进行吗?

    #include<stdio.h>

int fib(int n)
{

  int f[n+1];
  int i;

  f[0] = 0;
  f[1] = 1;

  for (i = 2; i <= n; i++)
  {
     f[i] = f[i-1] + f[i-2];
  }

  return f[n];
}

int main ()
{
  int n;
  scanf("%d",&n);
  printf("%02d", fib(n));
  getchar();
  return 0;
}

标签: c

解决方案


您得到的原因01是您使用了%02d转换说明符。

您应该使用简单的%d转换来1获取11...


推荐阅读