Оператор выбора - C (СИ)

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

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

Помогите, пожалуйста. Только начал изучать Си, и мало что понимаю. Нужно написать программу "Ввести с клавиатуры четырехзначное число и номер варианта для вычисления. Если введен 1, то вычислить произведение цифр числа. 2 - сумму первой и третьей цифры, 3 - сумма второй и четвертой." Буду очень благодарен.

Решение задачи: «Оператор выбора»

textual
Листинг программы
#include <stdio.h>
#define N 4
 
int main(void)
{
    int ch, mult = 1, i;
    char str[N + 1];
 
    printf("N = ");
    scanf("%s", str);
    printf("choice = ");
    scanf("%d", &ch);
 
    /* оператор множественного выбора: */
    switch (ch)
    {
    case 1:
        for (i = 0; i < N; i++)
            mult *= (str[i] - '0');
        printf("Mult: %d\n", mult);
        break;
 
    case 2:
        printf("Sum 1 and 3 digits: %d\n", str[0] + str[2] - '0' * 2);
        break;
 
    case 3:
        printf("Sum 2 and 4 digits: %d\n", str[1] + str[3] - '0' * 2);
        break;
 
    default:
        printf("Incorrect choice\n");
        break;
    }
    return 0;
}

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

  1. Объявлены переменные:
    • ch типа int для получения выбора пользователя
    • mult типа int и инициализируется единицей, используется для умножения
    • i типа int, используется в цикле
    • str типа char, массив для хранения строки, инициализируется размером N+1 символов
  2. Выводится сообщение и призыв к вводу:
    • N = и последующий ввод строки с помощью функции scanf
    • choice = и последующий ввод целого числа с помощью функции scanf
  3. Запускается оператор множественного выбора switch:
    • case 1: выполняется цикл for, перемножаются все цифры введенной строки
    • case 2: вычисляется сумма цифр 1 и 3 позиции строки
    • case 3: вычисляется сумма цифр 2 и 4 позиции строки
    • case default: выводится сообщение об ошибке
  4. Возвращается 0, заканчивается выполнение функции main

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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