w3resource

C Exercises: Create a new array taking the elements after the element value 5 from a given array of integers

C-programming basic algorithm: Exercise-70 with Solution

Write a C program to create a array taking the elements after the element value 5 from a given array of integers.

C Code:

#include <stdio.h>
#include <stdlib.h>
int main(void){ 
    int arr_size;
    int a1[] = {1, 2, 3, 5, 7, 9, 11};
    arr_size = sizeof(a1)/sizeof(a1[0]);
    printf("Elements in original array are: ");  
    print_array(a1, arr_size);
    
    int size = 0;
    int len = arr_size;
    int i = len - 1;
    while (i >= 0 && a1[i] != 5) i--;
    i++;
    size = len - i;
    int post_ele_5[size];
    for (int j = 0; j < size; j++)
      {
          post_ele_5[j] = a1[i + j];
      }    
    arr_size = sizeof(post_ele_5)/sizeof(post_ele_5[0]);                
    printf("\nElements in new array are: ");  
    print_array(post_ele_5, arr_size);
    }     
 print_array(int parray[], int size)
  {
   int i;      
   for( i=0; i<size-1; i++)  
    {  
        printf("%d, ", parray[i]);  
    } 
   printf("%d ", parray[i]);  
   printf("\n");   
  }

Sample Output:

Elements in original array are: 1, 2, 3, 5, 7, 9, 11 

Elements in new array are: 7, 9, 11

Pictorial Presentation:

C Programming Algorithm: Create a new array taking the elements after the element value 5 from a given array of integers

Flowchart:

C Programming Algorithm Flowchart: Create a new array taking the elements after the element value 5 from a given array of integers

C Programming Code Editor:

Contribute your code and comments through Disqus.

Previous: Write a C program to create a new array taking the elements before the element value 5 from a given array of integers.
Next: Write a C program to create a new array from a given array of integers shifting all zeros to left direction.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.

C Programming: Tips of the Day

Where in memory are my variables stored in C?

You got some of these right, but whoever wrote the questions tricked you on at least one question:

  • global variables -------> data (correct)
  • static variables -------> data (correct)
  • constant data types -----> code and/or data. Consider string literals for a situation when a constant itself would be stored in the data segment, and references to it would be embedded in the code
  • local variables(declared and defined in functions) --------> stack (correct)
  • variables declared and defined in main function -----> heap also stack (the teacher was trying to trick you)
  • pointers(ex: char *arr, int *arr) -------> heap data or stack, depending on the context. C lets you declare a global or a static pointer, in which case the pointer itself would end up in the data segment.
  • dynamically allocated space(using malloc, calloc, realloc) --------> stack heap

It is worth mentioning that "stack" is officially called "automatic storage class".

Ref : https://bit.ly/33PQ3g8

 





We are closing our Disqus commenting system for some maintenanace issues. You may write to us at reach[at]yahoo[dot]com or visit us at Facebook