Могу ли я разрешить пользователю вводить символ во время вложенного оператора switch? - PullRequest
1 голос
/ 05 августа 2020

Как сначала я прошу пользователя ввести год, если он вошел в 2010, то вывод просто выйдет, если он введет как 2012, тогда ему нужно снова ввести символ, я довольно плохо объясняю, но в любом случае я могу сделай это? Я новичок в программировании c .. спасибо .. я пытался добавить printf и scanf во вложенный оператор switch, но он не работает ...

Это мой код, если вы понимаете, ахаха, я новый программированию ..

#include <stdio.h>

int main() {
    int year;
    char code;
    float cost;
    
    printf("Enter the year : ");
    scanf("%d", &year);
    
    switch (year)
    {
        case 2010:
            cost = 200.50;
        break;
        
        case 2012:
        case 2013:
            switch (code)
            {
                printf("Enter the code : ");
                scanf("%c", &code);
                case 'A':
                case 'a':
                    cost = 89.00;
                    break;
                    
                case 'B':
                case 'b':   
                    cost = 105.90;
                    break;
                    
                default:
                    printf("The code entered is invalid. ");
                    break;
            }
        break;
        
        case 2014:
            cost = 350.30;
            break;
            
        default:
            printf("The year you entered is invalid. ");
    }
    
    printf("The cost is : RM %.2f", cost);
}

1 Ответ

1 голос
/ 05 августа 2020

Вместо:

    case 2013:
        switch (code)
        {
            printf("Enter the code : ");
            scanf("%c", &code);
            case 'A':

Сделайте:

    case 2013:
        printf("Enter the code : ");
        scanf("%c", &code);
        switch (code)
        {
            case 'A':
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...