Funkcja zliczająca cyfry zadanej liczby

0

Jestem nowicjuszem i napisałem funkcję, która ma zliczać cyfry podanej liczby, ale nie śmiga. Gdzie zrobiłem błąd?

int liczba_cyfr(float y){
    int i=0;
    do{
        y/=10;
        i++;
        }while (y>1);
    return i;
}
0

Wystarczy pomyśleć co się stanie gdy wrzucisz 10. w pierwszej iteracji i otrzyma wartość 1, a y = 1 więc przestaje spełniać warunek z while i zwraca 1.

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