#include #include int main() { // Initialize arrays for our Fibonacci values char array1[80] = {0}; char array2[80] = {0}; // Create pointers for easier swapping char *current = array2; char *previous = array1; char *temp; // Set initial value to 1 current[79] = 1; for (int i = 0; i < 383; i++) { // Calculate the next Fibonacci number directly into previous array int carry = 0; for (int j = 79; j >= 0; j--) { // Use temporary variable to avoid extra memory reads/writes int sum = previous[j] + current[j] + carry; carry = 0; if (sum >= 10) { sum -= 10; carry = 1; } previous[j] = sum; } // Swap pointers instead of copying memory temp = previous; previous = current; current = temp; // Print the current Fibonacci number printf("|"); for (int j = 0; j < 80; j++) { printf("%c", current[j] + '0'); } printf("|\n"); } return 0; }