Оператор case - исправит ошибку в коде - C (СИ)

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

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

#include <stdio.h>
#include <conio.h>
#include <string.h>
char a,d;
main ()
{
 
   printf ("\n Введите букву" );
    scanf("%c",&a);
     switch (a)
      {
        case 'a': printf ("\n получаем a "); break;
        case 'b':
        printf ("\n в b есть несколько вариантов выберите один ");
        scanf("%c",&d);
            switch (d)
            {
                case 'd':  printf ("\n получаем вариант d");  break;
 
                case 'f':  printf ("\n получаем вариант f ");  break;
 
                case 'e':  printf ("\n получаем вариант e"); break;
            }
         case 'c': printf ("\n получаем c "); break;
 
      }
 getch ();
return 0;
}
подскажите где проблема при вводе a и с все работаєт нормально а вот при вводе b программа не хочет работать

Решение задачи: «Оператор case - исправит ошибку в коде»

textual
Листинг программы
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <locale.h>
 
char a,d;
 
int main ()
{
    setlocale(LC_ALL,".1251");
    printf ("Введите букву " );
    scanf("%c",&a);
    switch (a)
    {
    
    case 'a': printf ("получаем a \n"); break;
    
    case 'b':
        printf ("в b есть несколько вариантов выберите один ");
        fflush(stdin);
        scanf("%c",&d);
        switch (d)
        {
        
        case 'd':  
            printf ("получаем вариант d \n");  break;
 
        case 'f':  
            printf ("получаем вариант f \n");  break;
 
        case 'e':  
            printf ("получаем вариант e \n"); break;
 
        }
    
        break;
 
    case 'c': printf ("получаем c \n"); break;
 
    }
    getch ();
    return 0;
}

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

  1. Включаем необходимые заголовочные файлы
  2. Объявляем переменные a и d типа char
  3. Устанавливаем локальную настройку на русскую
  4. Выводим сообщение с просьбой ввести букву
  5. Считываем введенную букву в переменную a
  6. Запускаем оператор switch для переменной a
  7. В случае 'a' выводим сообщение получаем a
  8. В случае 'b' выводим сообщение в b есть несколько вариантов выберите один
  9. Считываем введенную букву в переменную d
  10. Запускаем оператор switch для переменной d
  11. В случае 'd' выводим сообщение получаем вариант d
  12. В случае 'f' выводим сообщение получаем вариант f
  13. В случае 'e' выводим сообщение получаем вариант e
  14. В случае 'c' выводим сообщение получаем c
  15. В любом случае выходим из внутреннего оператора switch
  16. Выходим из внешнего оператора switch
  17. Ждем нажатия клавиши
  18. Возвращаем 0, чтобы указать, что программа успешно завершилась

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


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

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

10   голосов , оценка 3.7 из 5