• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[c] Zliczanie wystąpień danej liczby w tablicy - rekurencja

0 głosów
2,102 wizyt
pytanie zadane 19 marca 2017 w C i C++ przez AndekQR Użytkownik (880 p.)

Program ma za zadanie zliczanie wystąpień wczytanej cyfry w tablicy, która jest wypełniona pseudolosowymi cyframi. Program nie działa poprawnie więc proszę o wyjaśnienie gdzie jest błąd.  Program musi wykorzystywać rekurencje.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>



unsigned int licz(int tab[], int a, int ELEMENTS)
{
    int licznik=0;
    if((tab[ELEMENTS] == a) && (ELEMENTS >= 0))
        licznik++;
    if(ELEMENTS)
        return licz(tab, a, ELEMENTS-1);
    else
        return licznik;
}

int main()
{
    int i, a, ELEMENTS=10;
    srand(time(NULL));
    int tab[ELEMENTS];
    for(i=0; i<ELEMENTS; ++i)
    {
        tab[i] = rand()%10;
        printf("%d\n", tab[i]);
    }

    scanf("%d", &a);
    printf("\n%d",licz(tab, a, ELEMENTS));
    return 0;
}

 

1 odpowiedź

+1 głos
odpowiedź 19 marca 2017 przez mokrowski Mędrzec (158,940 p.)
wybrane 19 marca 2017 przez AndekQR
 
Najlepsza
Zmienną licznik zerujesz przy każdym wejściu do funkcji licz().

Podobne pytania

+1 głos
2 odpowiedzi 870 wizyt
pytanie zadane 6 września 2016 w PHP przez niezalogowany
+1 głos
3 odpowiedzi 1,454 wizyt
pytanie zadane 13 maja 2018 w C i C++ przez periedynek Obywatel (1,320 p.)
0 głosów
1 odpowiedź 1,117 wizyt
pytanie zadane 12 marca 2020 w C i C++ przez Programmingc100 Bywalec (2,620 p.)

93,607 zapytań

142,529 odpowiedzi

322,999 komentarzy

63,097 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...