Вопрос задан 03.09.2026 в 07:13. Предмет Информатика. Спрашивает Даюнов Саша.

Найдите пожалуйста ошибку почему не работает на окне непонятно что выходит
#include

int main(void)
{
int n1,n2;
char c;
printf("Направление:") ;
scanf ("%c", &c);
printf("Команда 1:") ;
scanf ("%i", &n1);
printf("Команда 2:") ;
scanf ("%i", &n2);

switch (c) {
case 'С':
switch (n1+n2) {
case -1:
case 3:
c='В';
break;
case 1:
c='З';
break;
case -2:
case 2:
c='Ю';
break;
}
break;
case 'В':
switch (n1+n2) {
case -1:
case 3:
c='Ю';
break;
case 1:
c='С';
break;
case -2:
case 2:
c='З';
break;
}
break;
case 'Ю':
switch (n1+n2) {
case -1:
case 3:
c='З';
break;
case 1:
c='В';
break;
case -2:
case 2:
c='С';
break;
}
break;
case 'З':
switch (n1+n2) {
case -1:
case 3:
c='С';
break;
case 1:
c='Ю';
break;
case -2:
case 2:
c='В';
break;
}
}

printf("%c\n",c);
return 0;
}
/stdin
В
3

Перейти к ответам

Ответы на вопрос

Отвечает Буракова Татьяна.

Главная ошибка в первой строке: написано #include, но не указано, какой файл подключать. Нужно так:

#include <stdio.h>

Ещё одна проблема: программа читает три значения: направление, команду 1 и команду 2. А во входных данных у вас только два значения: В 3. Нужно ввести ещё второе число, например: В 3 0.

Также буквы С, В, Ю, З у вас русские. В C тип char обычно нормально работает с английскими символами, а русская буква может занимать больше одного байта. Поэтому лучше заменить направления, например, на латинские: N, E, S, W, или работать со строками, а не с char.

Минимально исправьте начало программы так:
#include <stdio.h>

int main(void) {
int n1, n2;
char c;
...
}

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос