Here are 10 C programming exercises that involve arrays:
Sum of Array Elements: Write a program to calculate the sum of all elements in an array.
Average of Array Elements: Create a program to find the average of elements in an array.
Largest Element in an Array: Develop a program to find the largest element in an array.
Smallest Element in an Array: Write a program to find the smallest element in an array.
Reverse Array: Implement a program to reverse the order of elements in an array.
Search Element in Array: Create a program that searches for a specific element in an array and prints its index.
Even/Odd Count in an Array: Write a program to count the number of even and odd elements in an array.
Copy Array: Develop a program to copy the elements of one array into another array.
Merge Arrays: Create a program to merge two arrays into a third array.
Remove Duplicate Elements: Write a program to remove duplicate elements from an array and print the resulting array.
These exercises cover a range of array-related concepts and will help you practice and strengthen your skills in C programming. I have solved all of the above with explanatory comments. You should first make a sincere attempt at solving these problems before looking at the solutions.
1. Sum of Array Elements:
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int n = sizeof(arr) / sizeof(arr[0]);
int sum = 0;
for (int i = 0; i < n; i++) {
sum += arr[i];
}
printf("Sum of array elements: %d\n", sum);
return 0;
}
2. Average of Array Elements:
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int n = sizeof(arr) / sizeof(arr[0]);
int sum = 0;
for (int i = 0; i < n; i++) {
sum += arr[i];
}
double average = (double)sum / n;
printf("Average of array elements: %.2f\n", average);
return 0;
}
3. Largest Element in Array:
#include <stdio.h>
int main() {
int arr[] = {10, 5, 8, 15, 7};
int n = sizeof(arr) / sizeof(arr[0]);
int max = arr[0];
for (int i = 1; i < n; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
printf("Largest element in array: %d\n", max);
return 0;
}
4. Smallest Element in Array:
#include <stdio.h>
int main() {
int arr[] = {10, 5, 8, 15, 7};
int n = sizeof(arr) / sizeof(arr[0]);
int min = arr[0];
for (int i = 1; i < n; i++) {
if (arr[i] < min) {
min = arr[i];
}
}
printf("Smallest element in array: %d\n", min);
return 0;
}
5. Reverse Array:
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int n = sizeof(arr) / sizeof(arr[0]);
printf("Original Array: ");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\nReversed Array: ");
for (int i = n - 1; i >= 0; i--) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
6. Search Element in Array:
#include <stdio.h>
int main() {
int arr[] = {10, 5, 8, 15, 7};
int n = sizeof(arr) / sizeof(arr[0]);
int target = 8;
int found = 0;
for (int i = 0; i < n; i++) {
if (arr[i] == target) {
printf("Element %d found at index %d\n", target, i);
found = 1;
break;
}
}
if (!found) {
printf("Element %d not found in the array\n", target);
}
return 0;
}
7. Even/Odd Count in Array:
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int n = sizeof(arr) / sizeof(arr[0]);
int evenCount = 0, oddCount = 0;
for (int i = 0; i < n; i++) {
if (arr[i] % 2 == 0) {
evenCount++;
} else {
oddCount++;
}
}
printf("Even elements: %d\n", evenCount);
printf("Odd elements: %d\n", oddCount);
return 0;
}
8. Copy Array:
#include <stdio.h>
int main() {
int arr1[] = {1, 2, 3, 4, 5};
int n = sizeof(arr1) / sizeof(arr1[0]);
int arr2[n];
for (int i = 0; i < n; i++) {
arr2[i] = arr1[i];
}
printf("Original Array: ");
for (int i = 0; i < n; i++) {
printf("%d ", arr1[i]);
}
printf("\nCopied Array: ");
for (int i = 0; i < n; i++) {
printf("%d ", arr2[i]);
}
printf("\n");
return 0;
}
9. Merge Arrays:
#include <stdio.h>
int main() {
int arr
1[] = {1, 2, 3};
int n1 = sizeof(arr1) / sizeof(arr1[0]);
int arr2[] = {4, 5, 6};
int n2 = sizeof(arr2) / sizeof(arr2[0]);
int merged[n1 + n2];
for (int i = 0; i < n1; i++) {
merged[i] = arr1[i];
}
for (int i = 0; i < n2; i++) {
merged[n1 + i] = arr2[i];
}
printf("Merged Array: ");
for (int i = 0; i < n1 + n2; i++) {
printf("%d ", merged[i]);
}
printf("\n");
return 0;
}
10. Remove Duplicate Elements:
#include <stdio.h>
int main() {
int arr[] = {1, 2, 2, 3, 4, 4, 5};
int n = sizeof(arr) / sizeof(arr[0]);
int unique[n];
int size = 0;
for (int i = 0; i < n; i++) {
int isDuplicate = 0;
for (int j = 0; j < size; j++) {
if (arr[i] == unique[j]) {
isDuplicate = 1;
break;
}
}
if (!isDuplicate) {
unique[size++] = arr[i];
}
}
printf("Array with duplicates: ");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\nArray without duplicates: ");
for (int i = 0; i < size; i++) {
printf("%d ", unique[i]);
}
printf("\n");
return 0;
}