Funkcja zwracająca największą ujemną liczbę z tablicy

0

Mam problem z programem w języku C, ma to być funkcja np. int MaxUjemna(int tab[], int rozmiar), funkcja ma zwrócić największą ujemną liczbę w tablicy. Np. dla tab[5]={1,2,-1,0,-4} funkcja zwróci -1. Mój problem polega na tym, że nie mam pojęcia jak do tego się zabrać od strony algorytmu, planowałem skopiować z tab do np. nowej tab z argumentami ujemnymi i tam znaleźć największą ujemną i zwrócić returnem hhm??

3
for (i = 0; i < rozmiar && tab[i] >= 0; ++i);    // tu jest srednik
if (i >= rozmiar) return;           // nie ma
for (; i < rozmiar; ++i)
    if (tab[i] < 0 && tab[i] > max)
         max = tab[i];
0

Dzięki wielkie za pomoc! Od godziny nad tym myślałem i się zaciąłem:P Teraz wszystko jasne.

1

Po małych korektach:

for (i = 0; i < rozmiar && tab[i] >= 0; ++i)
   ;    

if (i >= rozmiar) // nie ma
   return 0;           

max = tab[i];

for (; i < rozmiar; ++i)
    if (tab[i] < 0 && tab[i] > max)
         max = tab[i];

return max;

1 użytkowników online, w tym zalogowanych: 0, gości: 1