I get some warnings from my IDE (Code:Blocks, Win64) when i use %llu as format specifier for unsigned long long in C with printf().
warning: unknown conversion type character 'l' in format
warning: too many arguments for format
But %llu should be the right one for unsigned long long...
#include <stdio.h>
void fibonacciNumber(int n)
{
unsigned long long fib1 = 0, fib2 = 1;
if (n < 1)
return;
printf("%lld ", fib1);
for (int i = 1; i < n; i++) {
printf("%lld ", fib2);
unsigned long long nextNum = fib1 + fib2;
fib1 = fib2;
fib2 = nextNum;
}
}
int main()
{
int numbers, clearBuffer;
char answer;
do
{
printf("Fibonacci sequence calculator - Enter a number :");
scanf("%i",&numbers);
fibonacciNumber(numbers);
while ((clearBuffer = getchar()) != EOF && clearBuffer != '\n');
printf("\n\nNew calculation? [y / n]");
scanf("%c",&answer);
}while ((answer == 'y') || (answer == 'Y'));
return 0;
}