Advertisement
mario_99

Untitled

May 30th, 2019
246
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.63 KB | None | 0 0
  1. #define _CRT_SECURE_NOWARNINGS
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4.  
  5. void InserisciVettore(int v[], int dim){
  6.     int i;
  7.     for (i = 0; i < dim; i++){
  8.         printf("inserisci l'elemento di indice %d: \n", i);
  9.         scanf("%d", &v[i]);
  10.     }
  11. }
  12.  
  13. int IntersezioneVettori(int v1[], int v2[], int dim1, int dim2, int v3[]){
  14.     int dim3=1;
  15.    
  16.     v3 = (int *)malloc(sizeof(int)*dim3);
  17.  
  18.     for (int i = 0; i < dim1; i++ ){
  19.         for (int j = 0; j < dim2; j++){
  20.             if (v1[i] == v2[j]){
  21.                 (v3[dim3-1]) = v1[i];
  22.                 v3 = (int*)realloc(v3, sizeof(int)*dim3);
  23.                 dim3++;
  24.            
  25.                
  26.                
  27.  
  28.             }
  29.         }
  30.        
  31.        
  32.     }
  33.     return dim3;
  34. }
  35. void StampaVettore(int *v, int dim){
  36.     for (int i = 0; i < dim; i++)
  37.         printf("l'elemento %d ha valore %d: ", i, v[i]);
  38.  
  39. }
  40. int main(void) {
  41.     int *vett1; /* primo vettore */
  42.     int *vett2; /* secondo vettore */
  43.     int *vett3; /* terzo vettore */
  44.     int dim1; /* dimensione del primo vettore */
  45.     int dim2; /* dimensione del secondo vettore */
  46.     int dim3; /* dimensione del terzo vettore */
  47.     printf("Inserisci il numero di elementi del primo vettore: ");
  48.     scanf("%d", &dim1);
  49.     //alloca primo vettore
  50.     vett1 = (int *)malloc(sizeof(int)*dim1);
  51.     printf("Inserisci il numero di elementi del secondo vettore: ");
  52.     scanf("%d", &dim2);
  53.     /* alloca il secondo vettore */
  54.     vett2 = (int *)malloc(sizeof(int)*dim2);
  55.  
  56.    
  57.    
  58.     /* inserisce gli elementi dei due vettori di ingresso */
  59.     InserisciVettore(vett1,dim1);
  60.     InserisciVettore(vett2,dim2);
  61.     /* chiama la funzione IntersezioneVettori */
  62.       dim3 = IntersezioneVettori(vett1,vett2,dim1,dim2,vett3);
  63.       StampaVettore(vett3, dim3);
  64.       free(vett1);
  65.       free(vett2);
  66.       free(vett3);
  67.       return 0;
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement