Не могу разобраться с switch - C (СИ)

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

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

Написал в виде теста:
#include <stdio.h>
#include <ctype.h>
 
int main () {
    char ch;
    while((ch = getchar()) != '&') {
        switch(toupper(ch)) {
            case 'A': printf("Ator\n");
                    break;
            case 'B': printf("Bob\n");
                    break;
            case 'C': printf("Cooooo\n");
                    break;
            default : printf("last\n");
        }
    }
       return 0;
}
Выводит в консоль при 'а' - Ator и last. Почему? Думал, что у меня с компилятором не то (gcc), на онлайн ресурсе результат такой же. Почему он не пропускает case default? Заранее спасибо, я пока новичек.

Решение задачи: «Не могу разобраться с switch»

textual
Листинг программы
#include <stdio.h>
#include <ctype.h>
 
int main (void) {
    char ch;
    while((ch = getchar()) != '&')
    {
        switch(toupper(ch)) 
        {
            case 'A': printf("Ator\n");
                    break;
            case 'B': printf("Bob\n");
                    break;
            case 'C': printf("Cooooo\n");
                    break;
            default : printf("last\n"); 
        }
        while (getchar() != '\n');
    }
       return 0;
}

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


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

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

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