Я пишу рекурсивную функцию, чтобы сделать следующее:
//addbig() -- This function is sent an array of integers and the length of the array.
//It returns the sum of all integers in the array that are larger than 1000.
Как-то моя функция не работает. Это дает мне нулевой результат.
long addbig (const int arrInt[],int l)
{
if (l == 0)
return 0;
else if(arrInt[l]>1000)
return arrInt[l] + addbig (arrInt,l-1);
else
return addbig (arrInt,l-1);
}
Мой целочисленный массив:
int arrInt[10]={1000,1,1000,2,1000,3,1000,4,1000,5};
Может кто-нибудь пролить некоторый свет на то, почему это не работает, и помочь мне немного. haha no pun предназначенный
ни один из номеров в вашем массиве не больше, чем 1000. – Daboyzuk
@Daboyzuk является абсолютно правильным. 1000 равно 1000, не более. Try 1001;) –
Кроме того, похоже, что вы используете 'l' как индекс элемента, который вы пытаетесь просмотреть, так и количество оставшихся элементов. Поскольку код написан, вы никогда не будете смотреть на 'arrInt [0]' – bengoesboom