Нужно написать функцию, которая получает целое значение и возвращает число с обратным порядком цифр. Например, для 7631 функция должна вернуть 1367

Код не работает так, как должен Укажите пожалуйста на мои ошибки

#include <stdio.h>
#include <math.h>

int func(int ch)
{
    int result = 0;
    while (ch != 0)
    {
        result = (result * 10) + (ch % 10);
        ch = (ch - (ch % 10)) / 10;
    }
    return result;
}

int main()
{
    int a = 7631;
    func(a);
    printf("%d", a);
    return 0;
}

Ответы (1 шт):

Автор решения: Harry

Напишите

a = func(a);

вместо просто

func(a);

иначе вы теряете все, что сделано в функции...

Да, вот тут

ch = (ch - (ch % 10)) / 10;

достаточно просто

ch = ch / 10;

(или, что то же самое, ch /= 10;) - в силу целочисленности деления.

→ Ссылка