Skip to main content

4. Array Input and Output Operations

4.1 Reading Array Elements

4.1.1 Reading with Known Size

#include <stdio.h>

int main() {
    int numbers[5];
    
    printf("Enter 5 integers:\n");
    for (int i = 0; i < 5; i++) {
        printf("Element %d: ", i + 1);
        scanf("%d", &numbers[i]);
    }
    
    printf("You entered: ");
    for (int i = 0; i < 5; i++) {
        printf("%d ", numbers[i]);
    }
    printf("\n");
    
    return 0;
}

4.1.2 Reading with User-Specified Size

#include <stdio.h>
#define MAX_SIZE 100

int main() {
    int arr[MAX_SIZE];
    int n;
    
    printf("How many numbers do you want to enter (max %d): ", MAX_SIZE);
    scanf("%d", &n);
    
    // Input validation
    if (n <= 0 || n > MAX_SIZE) {
        printf("Invalid size! Please enter between 1 and %d\n", MAX_SIZE);
        return 1;
    }
    
    printf("Enter %d numbers:\n", n);
    for (int i = 0; i < n; i++) {
        printf("Number %d: ", i + 1);
        scanf("%d", &arr[i]);
    }
    
    printf("Your numbers: ");
    for (int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
    
    return 0;
}

4.2 Displaying Array Elements

4.2.1 Basic Display

void print_array(int arr[], int size) {
    printf("Array contents: ");
    for (int i = 0; i < size; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
}

4.2.2 Formatted Display

void print_array_formatted(int arr[], int size) {
    printf("┌");
    for (int i = 0; i < size; i++) {
        printf("────┬");
    }
    printf("\b┐\n");  // Backspace to replace last ┬ with ┐
    
    printf("│");
    for (int i = 0; i < size; i++) {
        printf("%3d │", arr[i]);
    }
    printf("\n");
    
    printf("└");
    for (int i = 0; i < size; i++) {
        printf("────┴");
    }
    printf("\b┘\n");
    
    printf(" ");
    for (int i = 0; i < size; i++) {
        printf("%3d  ", i);
    }
    printf("\n");
}