/* Copyright 2005 Daniel Cer (daniel.cer@cs.colorado.edu) This work is licensed under the Creative Commons Attribution-NonCommercial- ShareAlike License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/2.5/ or send a letter to Creative Commons, 543 Howard Street, 5th Floor, San Francisco, California, 94105, USA. */ #include int fibonacci(int n) { if (n <= 0) return -1; if (n <= 2) return 1; return fibonacci(n-1) + fibonacci(n-2); } int main (int argc, char *argv[]) { int n; if (argc != 2) { fprintf(stderr, "Usage:\n\t%s (n-th fibonacci # to calculate)\n", argv[0]); return -1; } n = atoi(argv[1]); printf("fibonacci(%d): %d\n", n, fibonacci(n)); return 0; }