#include <stdio.h>
void deleteAtBeginning(int arr[], int *size) {
if (*size == 0) {
printf("Array is empty, nothing to delete.\n");
return;
}
// Shift elements left to overwrite first element
for (int i = 1; i < *size; i++) {
arr[i - 1] = arr[i];
}
(*size)--; // Reduce size by 1
}
void printArray(int arr[], int size) {
for (int i = 0; i < size; i++) {
printf("%d", arr[i]);
if (i < size - 1) printf(" -> ");
}
printf(" -> null\n");
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = 5;
printf("Original array:\n");
printArray(arr, size);
deleteAtBeginning(arr, &size);
printf("After deleting at beginning:\n");
printArray(arr, size);
return 0;
}
for (int i = 1; i < *size; i++) {
arr[i - 1] = arr[i];
}
Shift all elements left by one to overwrite the first element
Decrease the array size by one after deletion
Original array:
1 -> 2 -> 3 -> 4 -> 5 -> null
After deleting at beginning:
2 -> 3 -> 4 -> 5 -> null