Мне нужно сделать функцию, которая суммирует мой массив, который заполняется случайными значениями. Моя функция возвращает 0, а не фактическое суммирование массива. У меня нет большого опыта работы с массивами или случайными значениями, как я могу закодировать свою функцию arrSum
, чтобы дать мне сумму массива при вызове?Суммирование массива со случайными значениями
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define SIZE 1000
int arrSum(int arr[SIZE], int b) {
if (b < 0) {
return 0;
} else {
return arr[b] + arrSum(arr, b - 1);
}
}
int main() {
int inputNum;
int i;
int arr1[SIZE];
int sum;
srand(time(0));
printf("Enter an integer between 0 and 1000: ");
scanf("%d", &inputNum);
sum = arrSum(arr1, inputNum);
printf("sum: %6d\n\n", sum);
printf(" Pos | Val\n");
printf("-------------\n");
for (i = 0; i < inputNum; i++) {
printf("%4d |%4d\n", i, rand() % 1001);
}
return 0;
}
'if (arr <0)' Как вы думаете, что это делает? Ваш компилятор жалуется при компиляции с предупреждениями? – DeiDei
Составляет ли это все предупреждения? –