The language is C Thanks Write a function to unzip an array

The language is C. Thanks!

Write a function to unzip an array of length 2n into two arrays of length n each:/* Unzips an array into two (opposite of zip). E.g., *c: [1, 2, 3, 4, 5, 6] * unzips into * a: [1, 3, 5] * b: [2, 4, 6] * In this case, n is 3. Returns - 1 if the input is */int unzip (int * a, int * b, int * c, int n);

Solution

Program:

#include<stdio.h>
int unzip(int *a,int *b,int *c,int n){
   int sizeC = sizeof(c)/sizeof(int);
   if(sizeC%2 ==0){
       int sizeAB= sizeof(c)/sizeof(int)/2;
       int i=0;
       for(i=0;i<(sizeC/2);i++){
           a[i]=c[i];
           b[i]=c[i+sizeAB];
       }
       return 0;
   }else{
       return -1;
   }
}
int main(){
   int a[]={1,2,3,4,5,6};
   int *b=(int *)malloc(sizeof(a)/sizeof(int)/2);
   int *c=(int *)malloc(sizeof(a)/sizeof(int)/2);
   printf(\"%d\",unzip(a,b,c,sizeof(a)/sizeof(int)));
   return 0;
}

The language is C. Thanks! Write a function to unzip an array of length 2n into two arrays of length n each:/* Unzips an array into two (opposite of zip). E.g.,

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site