Дано целое число. Сосчитать количество четных цифр в нем - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Доброй ночи! Задача: Дано целое число. Сосчитать количество четных цифр в нем. (язык си) Задачу как решать понятно то) Я пишу под visual studio, просто хотелось бы узнать как такое задание должно выглядеть на чисто си, чтобы допустим это задание работало на других компиляторах без проблем (GCC, etc.)... Просто может setlocale(LC_ALL, "Rus"); и system("PAUSE"); только в visual'e? Код:
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>

int main(int argc, char *argv[])
{
    setlocale(LC_ALL, "Rus");
    int n,count;
    count = 0;
    printf("Введите целое число: ");
    scanf_s("%d", &n);
    n = abs(n);
    while (n > 0)
    {
        if ((n % 10) % 2 == 0)
            count++;
        n /= 10;
    }
 
    printf("Количество четных цифр в заданном целом числе = ");
    printf("%d\n",count);
    
    system("PAUSE");
    return 0;
}

Решение задачи: «Дано целое число. Сосчитать количество четных цифр в нем»

textual
Листинг программы
#include <stdio.h>
 
int main(void)
{
    int n;
    scanf("%d", &n);
    int counter = 0;
    do
    {
        if (n % 2 == 0) counter++;
    } while ((n /= 10) != 0);
    printf("%d\n", counter);
    return 0;
}

Объяснение кода листинга программы

В этом коде:

  1. В начале объявляется переменная n типа int, которая будет использоваться для хранения введенного числа.
  2. Затем с помощью функции scanf в n считывается целое число.
  3. Далее объявляется переменная counter типа int, которая будет использоваться для подсчета количества четных цифр.
  4. Инициализируем counter нулем.
  5. Затем используется цикл do-while, который будет выполняться до тех пор, пока n не станет равным нулю.
  6. Внутри цикла проверяется, является ли остаток от деления n на 2 равным нулю. Если это так, то значение counter увеличивается на единицу.
  7. После каждой итерации цикла значение n делится на 10, чтобы убрать последнюю цифру числа.
  8. После окончания цикла выводится значение counter, которое представляет собой количество четных цифр в числе.
  9. В конце программы возвращается ноль, чтобы указать, что программа успешно завершилась.

Оцени полезность:

13   голосов , оценка 4.231 из 5
Похожие ответы