Advertisement
Adytzu04

l10p1

Apr 24th, 2012
174
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.41 KB | None | 0 0
  1. //header
  2. #ifndef L10P1_H_
  3. #define L10P1_H_
  4.  
  5. void *xmalloc(size_t nrOcteti);
  6. int *citireVector(int n);
  7. void afisareVector(int *a, int n);
  8. int *sumaVectori(int *a,int *b,int n);
  9.  
  10.  
  11. #endif /* L10P1_H_ */
  12.  
  13. // c
  14.  
  15. #include <stdio.h>
  16. #include <stdlib.h>
  17. #include "l10p1.h"
  18.  
  19.     void *xmalloc(size_t nrOcteti)
  20.     {
  21.         void *p;
  22.         p = malloc(nrOcteti);
  23.         if(p==0)
  24.         {
  25.             fprintf(stderr,"Memorie insuficienta\n");
  26.             exit(EXIT_FAILURE);
  27.         }
  28.         return p;
  29.     }
  30.  
  31.     int *citireVector(int n)
  32.     {
  33.         int i;
  34.         int *p;
  35.         p=(int *)xmalloc(n*sizeof(int));
  36.         for(i=0;i<n;i++)
  37.  
  38.             {
  39.                 printf("a(%d)= ",i);
  40.                 scanf("%d",p+i);
  41.             }
  42.         return p;
  43.     }
  44.  
  45.     void afisareVector(int *a, int n)
  46.     {
  47.         int i;
  48.         for(i=0;i<n;i++)
  49.  
  50.             {
  51.                 printf("%3d ",a[i]);
  52.             }
  53.     }
  54.  
  55.     int *sumaVectori(int *a,int *b,int n)
  56.     {
  57.         int *s,i;
  58.         s=(int *)xmalloc(n*sizeof(int));
  59.         for(i=0;i<n;i++)
  60.         {
  61.             *(s+i)=*(a+i)+*(b+i);
  62.         }
  63.         return s;
  64.     }
  65.  
  66. //main
  67.  
  68.  
  69. #include <stdio.h>
  70. #include <stdlib.h>
  71. #include "l10p1.h"
  72.  
  73.     int main(void)
  74.     {
  75.         int *p,*b,*s;
  76.         int n;
  77.         printf("n=");
  78.         scanf("%d",&n);
  79.  
  80.         printf("Dati primul vector:\n");
  81.         p=citireVector(n);
  82.         afisareVector(p,n);
  83.  
  84.         printf("\nDati al doilea vector:\n");
  85.         b=citireVector(n);
  86.         afisareVector(b,n);
  87.  
  88.         printf("\nSuma vectorilor este :\n");
  89.         s=sumaVectori(p,b,n);
  90.         afisareVector(s,n);
  91.  
  92.  
  93.         free(p);
  94.         p=0;
  95.         free(b);
  96.         b=0;
  97.         free(s);
  98.         s=0;
  99.         return 0;
  100.  
  101.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement