C Exercises: Check a given array of integers and return true if every 5 that appears in the given array is next to another 5
65. Every 5 is Adjacent to Another
Write a C program to check a given array of integers and return true if every 5 that appears in the given array is next to another 5.
C Code:
#include <stdio.h>
#include <stdlib.h>
// Function prototype for 'test'
int test(int numbers[], int arr_len);
int main(void){
int arr_size;
// Declaration and initialization of an integer array 'array1'
int array1[] = {3, 5, 5, 3, 7};
arr_size = sizeof(array1)/sizeof(array1[0]);
// Printing the result of the 'test' function for 'array1'
printf("%d",test(array1, arr_size));
// Declaration and initialization of an integer array 'array2'
int array2[] = {3, 5, 5, 4, 1, 5, 7};
arr_size = sizeof(array2)/sizeof(array2[0]);
// Printing the result of the 'test' function for 'array2'
printf("\n%d",test(array2, arr_size));
// Declaration and initialization of an integer array 'array3'
int array3[] = {3, 5, 5, 5, 5, 5};
arr_size = sizeof(array3)/sizeof(array3[0]);
// Printing the result of the 'test' function for 'array3'
printf("\n%d",test(array3, arr_size));
// Declaration and initialization of an integer array 'array4'
int array4[] = {3, 5, 5, 5, 5, 5};
arr_size = sizeof(array4)/sizeof(array4[0]);
// Printing the result of the 'test' function for 'array4'
printf("\n%d",test(array4, arr_size));
}
// Definition of the 'test' function
int test(int numbers[], int arr_len)
{
int flag = 0;
// Looping through the elements of the array
for (int i = 0; i < arr_len; i++)
{
if (numbers[i] == 5)
{
// Checking if adjacent elements are also 5
if ((i > 0 && numbers[i - 1] == 5) || (i < arr_len - 1 && numbers[i + 1] == 5))
flag = 1;
else if (i == arr_len - 1)
flag = 0;
else
return 0;
}
}
// Returning 'flag' indicating if there are adjacent 5s
return flag;
}
Sample Output:
1 0 1 1
Pictorial Presentation:
Flowchart:

For more Practice: Solve these Related Problems:
- Write a C program to check if every occurrence of 7 in an array is immediately followed or preceded by another 7.
- Write a C program to verify if all instances of a given number in an array appear in pairs.
- Write a C program to determine if every odd number in an array has at least one adjacent odd number.
- Write a C program to check if all occurrences of the number 2 in an array are adjacent to another 2.
Go to:
PREV : Check for 5 Appearing 5 Times Non-Adjacent.
NEXT : Matching Start and End Sequence.
C Programming Code Editor:
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.