Crie uma função que receba como parâmetros dois vetores de inteiros: x1 e x2 e o valor n que representa o tamanho de ambos os vetores. A função deverá retornar um ponteiro para um terceiro vetor,x3x3, alocado dinamicamente, contendo a soma de x1x1 e x2x2.
int* soma(int * x1, int * x2, int n);
entrada : 8
1 2 3 4 5 6 7 8
1 2 34 5 8 1 4 9
saida:
2 4 37 9 13 7 11 17
//Segue o código
#include “stdio.h”
#include “stdlib.h”
int *soma(int *x1, int *x2, int n){
int i;
int *sum = (int *) malloc(n * sizeof(int));
if(sum == NULL){
printf(“Memoria insuficiente\n”);
exit(1);
}
for(i = 0; i < n; i++){
sum[i] += x1[i] + x2[i];
}
return sum;
}
int main(){
int i, n;
scanf("%d", &n);
int x1[n];
int x2[n];
for(i = 0; i < n; i++){
scanf("%d", &x1[i]);
}
for(i = 0; i < n; i++){
scanf("%d", &x2[i]);
}
int *resp = soma(x1, x2, n);
for(i = 0; i < n; i++){
printf("%d ", resp);
}
free(resp);
return 0;
}