Создаёшь массив, заполняешь его, считаешь сумму и произведение, и обрабатываешь условие:
#include
#include
#include
#include
#define RANDOM_MIN -9
#define RANDOM_MAX 9
int main(void) {
srand(time(NULL)); /* for "visible" random */
int N;
scanf("%d", &N);
int *A = malloc(sizeof(int) * N);
int sum = 0;
int prd = 1;
printf("elements: ");
int i;
for (i = 0; i < N; i++) {
A[i] = RANDOM_MIN + rand() % (RANDOM_MAX + abs(RANDOM_MIN) + 1);
printf("%d ", A[i]);
if (A[i] > 0) {
sum += A[i];
}else if (A[i] < 0) {
prd *= A[i];
}
}
printf("\n");
printf("summa: %d\n", sum);
printf("product: %d\n", prd);
if (sum > prd) {
int max = A[0];
for (i = (0 + 1); i < N; i++) {
if (max < A[i]) {
max = A[i];
}
}
printf("max element is: %d", max);
} else {
printf("product higher than summa");
}
getch();
free (A);
return 0;
}