How to move element to end of array in C

1 Answer

0 votes
#include <stdio.h>

void ShiftArrayToLeft(int arr[], int size, int start) {
	for (int i = start; i < size - 1; i++) {
		arr[i] = arr[i + 1];
	}
}

void MoveElementToEndOfArray(int arr[], int size, int index) {
	int n = arr[index];

	ShiftArrayToLeft(arr, size, index);

	arr[size - 1] = n;
}

void PrintArray(int arr[], int size) {
	for (int i = 0; i < size; i++)
		printf("%d ", arr[i]);
}

int main(void) {
	int arr[] = { 4, 9, 12, 90, 13, 0, 3, 97 };

	int size = sizeof(arr) / sizeof(arr[0]);

	PrintArray(arr, size);

	int index = 2;

	printf("\nelement value = %d\n", arr[index]);
	
	MoveElementToEndOfArray(arr, size, index);
	
	PrintArray(arr, size);

	return 0;
}



/*
run:
  
4 9 12 90 13 0 3 97
element value = 12
4 9 90 13 0 3 97 12
  
*/

 



answered Nov 22, 2022 by avibootz
edited Nov 23, 2022 by avibootz

Related questions

1 answer 181 views
181 views asked Nov 22, 2022 by avibootz
2 answers 276 views
276 views asked Nov 23, 2022 by avibootz
1 answer 183 views
1 answer 161 views
161 views asked Nov 23, 2022 by avibootz
1 answer 183 views
...