Language: C

int main(void){
	char input[20];
	int n, m;
	int i, j;
	int *vectorA;
	int *vectorb;
	int *vectorc;
	fgets(input, sizeof(input), stdin);
	n = atoi(strtok(input, " "));
	m = atoi(strtok(NULL, " "));
	vectorA = (int *)malloc(sizeof(int) * n * m);
	vectorb = (int *)malloc(sizeof(int) * m);
	vectorc = (int *)malloc(sizeof(int) * n);
	for (j = 0; j < n; j++){
		fgets(input, sizeof(input), stdin);
		for (i = 0; i < m; i++){	
			if(i == 0){
				vectorA[j * m + i] = atoi(strtok(input, " "));
			}else{
				vectorA[j * m + i] = atoi(strtok(NULL, " "));
			}
		} 	
	}
 
	for (i = 0; i < m; i++){
		fgets(input, sizeof(input), stdin);
		vectorb[i] = atoi(input) ;
	}

	for (j = 0; j < n; j++){
		for (i = 0; i < m; i++){	
				vectorc[j] += vectorA[j * m + i] * vectorb[i];
		} 	
	}
 
	for (j = 0; j < n; j++){
		printf("%d\n", vectorc[j]);
	}
	return 0;
}

Compiler output:
main.c: In function 'main':
main.c:8:9: error: implicit declaration of function 'fgets' [-Wimplicit-function-declaration]
    8 |         fgets(input, sizeof(input), stdin);
      |         ^~~~~
main.c:8:37: error: 'stdin' undeclared (first use in this function)
    8 |         fgets(input, sizeof(input), stdin);
      |                                     ^~~~~
main.c:1:1: note: 'stdin' is defined in header '<stdio.h>'; this is probably fixable by adding '#include <stdio.h>'
  +++ |+#include <stdio.h>
    1 | int main(void){
main.c:8:37: note: each undeclared identifier is reported only once for each function it appears in
    8 |         fgets(input, sizeof(input), stdin);
      |                                     ^~~~~
main.c:9:13: error: implicit declaration of function 'atoi' [-Wimplicit-function-declaration]
    9 |         n = atoi(strtok(input, " "));
      |             ^~~~
main.c:9:18: error: implicit declaration of function 'strtok' [-Wimplicit-function-declaration]
    9 |         n = atoi(strtok(input, " "));
      |                  ^~~~~~
main.c:10:25: error: 'NULL' undeclared (first use in this function)
   10 |         m = atoi(strtok(NULL, " "));
      |                         ^~~~
main.c:1:1: note: 'NULL' is defined in header '<stddef.h>'; this is probably fixable by adding '#include <stddef.h>'
  +++ |+#include <stddef.h>
    1 | int main(void){
main.c:11:26: error: implicit declaration of function 'malloc' [-Wimplicit-function-declaration]
   11 |         vectorA = (int *)malloc(sizeof(int) * n * m);
      |                          ^~~~~~
main.c:1:1: note: include '<stdlib.h>' or provide a declaration of 'malloc'
  +++ |+#include <stdlib.h>
    1 | int main(void){
main.c:11:26: warning: incompatible implicit declaration of built-in function 'malloc' [-Wbuiltin-declaration-mismatch]
   11 |         vectorA = (int *)malloc(sizeof(int) * n * m);
      |                          ^~~~~~
main.c:11:26: note: include '<stdlib.h>' or provide a declaration of 'malloc'
main.c:37:17: error: implicit declaration of function 'printf' [-Wimplicit-function-declaration]
   37 |                 printf("%d\n", vectorc[j]);
      |                 ^~~~~~
main.c:37:17: note: include '<stdio.h>' or provide a declaration of 'printf'
main.c:37:17: warning: incompatible implicit declaration of built-in function 'printf' [-Wbuiltin-declaration-mismatch]
main.c:37:17: note: include '<stdio.h>' or provide a declaration of 'printf'