Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <stdarg.h>
- #include <string.h>
- int isInVec(int *vect, int vectLengt, int elementCautat) {
- int i;
- for (i = 0; i < vectLengt; i++)
- if (vect[i] == elementCautat)
- return 1;
- return 0;
- }
- int comune(int nVec, ...)
- {
- va_list argument; //declaram variabila de tip va_list
- int **vectors, *lenghtVectors;
- int i, j, nrElementeCom = 0;
- vectors = (int **)malloc(sizeof(int*) * nVec);
- lenghtVectors = (int *)malloc(sizeof(int) * nVec);
- va_start(argument, nVec); //apelam va_start() si o initializam
- for (i = 0; i < nVec; i++) {
- vectors[i] = va_arg(argument, int *);
- lenghtVectors[i] = va_arg(argument, int );
- }
- va_end(argument);
- for (i = 0; i < lenghtVectors[0]; i++) {
- j = 1;
- while (j < nVec && isInVec(vectors[j], lenghtVectors[j], vectors[0][i]))
- j++;
- if (j == nVec)
- nrElementeCom++;
- }
- return nrElementeCom; // terminare parcurgere + eliberare memorie
- }
- int main(void){
- int v1[] = { 5, 8 , 3 , 0};
- int v2[] = { 8, 3, 5 };
- int v3[] = { 5, 0, 8 , 3};
- printf("%d", comune(3, v1, 2, v2, 3, v3, 3));
- scanf("%*c");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment