How to Remove Element from Array based on a Condition in C - Step by Step Examples
How to Remove Element from Array based on a Condition in C ?
Answer
In C, you can iterate through the array and move elements to fill the gaps created by removing elements based on a condition.
✐ Examples
1 Remove Even Numbers
In this example,
- We create an array `numbers` with elements including those to be removed based on the condition.
- We iterate through the array and shift elements to overwrite even numbers.
- We decrement the count of elements to simulate removal of even numbers.
C Program
#include <stdio.h>
int main() {
int numbers[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int length = sizeof(numbers) / sizeof(numbers[0]);
int i, count = 0;
for (i = 0; i < length; i++) {
if (numbers[i] % 2 != 0) {
numbers[count++] = numbers[i];
}
}
printf("Array after filtering:\n");
for (i = 0; i < count; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
Output
Array after filtering: 1 3 5 7 9
2 Remove Strings Containing 'a'
In this example,
- We create an array `words` with elements including those to be removed based on the condition.
- We iterate through the array and move elements to overwrite strings containing 'a'.
- We decrement the count of elements to simulate removal of strings containing 'a'.
C Program
#include <stdio.h>
#include <string.h>
int main() {
char words[][10] = {"apple", "banana", "grape", "orange", "melon"};
int length = sizeof(words) / sizeof(words[0]);
int i, count = 0;
for (i = 0; i < length; i++) {
if (!strchr(words[i], 'a')) {
strcpy(words[count++], words[i]);
}
}
printf("Array after filtering:\n");
for (i = 0; i < count; i++) {
printf("%s ", words[i]);
}
return 0;
}
Output
Array after filtering: melon
Summary
In this tutorial, we learned How to Remove Element from Array based on a Condition in C language with well detailed examples.
More C Arrays Tutorials
- How to Declare an Array in C ?
- How to Initialize an Array in C ?
- How to Access Array Elements in C ?
- How to Access Array Elements using Index in C ?
- How to get First Element in Array in C ?
- How to get Last Element in Array in C ?
- How to check if an Array is Empty in C ?
- How to check if an Array is Not Empty in C ?
- How to get Sub Array in C ?
- How to Get Array Length in C ?
- How to Iterate Over an Array in C ?
- How to Iterate Over an Array in Reverse Order in C ?
- How to get the Index of Specified Element in an Array in C ?
- How to check if Specified Element is present in the Array in C ?
- How to count the Number of Occurrences of Specified Element in the Array in C ?
- How to Sort an Array in C ?
- How to Sort an Array in Ascending Order in C ?
- How to Sort an Array in Descending Order in C ?
- How to create a Two Dimensional Array in C ?
- How to Iterate over a Two Dimensional Array in C ?
- How to create a Three Dimensional Array in C ?
- How to Copy an Array in C ?
- How to Split an Array in C ?
- How to Join Arrays in C ?
- How to check if Two Arrays are Equal in C ?
- How to check if Two Arrays have Same Elements (Regardless of Order) in C ?
- How to Convert an Array of Integers to an Array of Strings in C ?
- How to Convert an Array of Strings to an Array of Integers in C ?
- How to Reverse an Array in C ?
- How to Shuffle an Array in C ?
- How to Rotate Elements in an Array in C ?
- How to Filter Elements of an Array based on a Condition in C ?
- How to Declare an Integer Array in C ?
- How to Declare a Float Array in C ?
- How to Declare a String Array in C ?
- How to Remove Duplicates in an Array in C ?
- How to Remove Specific Element from an Array in C ?
- How to Remove Element from Array based on a Condition in C ?
- How to Sort a String Array in Dictionary Order in C ?
- How to Concatenate Strings in Array in C ?