Перевернуть числа в массиве - C (СИ)
Формулировка задачи:
У самого не получилось, просто как перевернуть число ззнаю, а как перевернуть числа в массиве - нет. Не получается, много перепробовал. Код на Си нужен. Нужно получить из например 123, 456 -> 321, 654
Листинг программы
- #include <stdio.h>
- #include <locale.h>
- int main()
- {
- setlocale(0, "");
- int size = 0;
- int n,i;
- printf("Введите размер масива\n");
- scanf("%d", &size);
- int a[size];
- for (int i = 0; i < size; i++)
- {
- scanf("%d",&a[i]);
- }
- int b[n];
- for (i=0; i<size;i++)
- {
- if(a[i]>0)
- {
- b[i] = 10*b[i] + (a[i] % 10);
- a[i]/=10;
- }
- printf("( %d)",a[i]);
- }
- for (int i=0; i<size; i++)
- {
- printf("( %d)",a[i]);
- }
- }
Решение задачи: «Перевернуть числа в массиве»
textual
Листинг программы
- int replace(int a)
- {
- int b = 0;
- while (a)
- {
- b = b*10 + a%10;
- a/=10;
- }
- return b;
- }
- //...
- for (int i=0; i<size; i++)
- a[i] = replace(a[i]);
Объяснение кода листинга программы
- В данном коде функция
replace
принимает целое числоa
и возвращает перевернутое число, которое представляет собой сумму цифр исходного числа. - Внутри функции
replace
объявлена переменнаяb
типаint
, которая инициализируется значением 0 и используется для подсчета суммы цифр. - Затем в цикле
while
происходит обработка каждой цифры числаa
. - В каждой итерации цикла значение переменной
b
увеличивается на произведение 10 на текущую цифру и на остаток от деленияa
на 10. - Значение
a
делится на 10, чтобы убрать последнюю цифру и перейти к следующей. - Цикл продолжается, пока значение
a
не станет равным 0. - В конце функции
replace
возвращается значение переменнойb
, которое представляет собой перевернутое число. - За пределами функции
replace
объявлен массивa
и инициализируется значениями, которые необходимо перевернуть. - В цикле
for
происходит обращение к каждому элементу массиваa
и его замена на результат вызова функцииreplace
. - Результатом работы данного кода будет перевернутый массив
a
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д