Что неправильно

Что неправильно
Что здесь неправильно
#include
#include

int main()
{
int n,d;
printf("Please enter the number of the month: n");
scanf("%d",&n);
switch(n)
{
case '1,3,5,7,8,10,12':d=31;printf("The number of days in that month is: n",d);break;
case '4,6,9,11':d=30;printf("The number of days in that month is: n",d);break;
case '2':d=28;printf("The number of days in that month is: n",d);break;
default:printf("Entry is incorrect");
}
return 0;
}

  • А что компилятор пишет?
    Да и проверять строку с int обычно не выйдет )

    НУ а при выводе кто будет формат писать? )
    printf("The number of days in that month is: %d n",d)

    А для перечисления месяцев писать так, потому что у тебя строка сравнивается с числом и естественно равны они никогда не будут и выдает Entry is incorrect
    case 4:
    case 6:
    case 9:
    case 11:d=30;printf("The number of days in that month is: %d n",d);break;

  • Надо так. Обрати внимание на %d в printf.
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12 :d=31;printf("The number of days in that month is: %dn",d);break;
    case 4:
    case 6:
    case 9:
    case 11 :d=30;printf("The number of days in that month is: %dn",d);break;
    case 2 :d=28;printf("The number of days in that month is: %dn",d);break;
    default:printf("Entry is incorrect");