Я столкнулся с этой проблемой: ошибка проверки времени выполнения # 2 - S в визуальной студии 15. Это случается раньше, когда я также пытаюсь использовать массив на языке C. По моему учебнику, что случилось с ниже кодОшибка проверки времени выполнения # 2 - s (язык C на Microsoft Visual C++ 2015 (версия сообщества))
char myname[20];
printf("Type your name:");
scanf("%19s", myname);
printf("\n\n%s,Welcome to the class\n", myname);
Согласно учебнику, если ввод мое имя, как, например: Тони Старк, проблема будет только сканировать Тони и игнорировать все вещи после того, как пустое пространство. Однако, когда я пытаюсь это сделать, появляется Ошибка проверки времени выполнения # 2.
Также в поле ниже код
#include<stdio.h>
int main(void)
{
char name[30];
int seat[30] = { 0 };
int i, seatt, j;
char decision[1];
do
{
printf("Hi, what is your name? ");
scanf("%s", name);
printf("Welcome %s!\n\n", name);
printf("*********************\n");
printf("CINEMA 1 SEATING PLAN\n");
printf("*********************");
for (i = 0; i < 30; i++)
{
if (i % 5 == 0)
{
printf("\n\n");
}
if (seat[i] == 0)
{
printf("%3d", i);
}
else
{
printf("%3s", "**");
}
}
printf("\n\n*********************");
do
{
printf("\n\nWhich seat do you want? ");
scanf("%d", &seatt);
if (seat[seatt]!=0)
{
printf("Sorry, seat is taken!\n");
for (j = 0; j < 30; j++)
{
if (seat[j] == 0)
{
printf("Suggest to take seat: %d", j);
break;
}
}
}
} while (seat[seatt] != 0);
++seat[seatt];
printf("\n\nWould you like to make next booking (Y or N)? ");
scanf("%s", decision);
printf("\n\n");
if (decision[0] == 'Y' || decision[0] == 'y')
{
system("cls");
}
} while (decision[0] == 'Y' || decision[0] == 'y');
printf("See you again!\n");
return 0;
}
Все нормально, до тех пор, когда до последней части, где спрашивают меня, где заказать следующий билет, если я keyin другой, кроме Y, она также не появляется та же проблема ,
ли первый фрагмент кода * все * ваш код? А во второй программе, на какую переменную указывает сообщение? – immibis
Первая проблема - это всего лишь небольшая часть кода, потому что я знаю, что в ней происходит ошибка. Для второй проблемы сообщение показывает Run-Time Check Failure № 2 - S, поэтому я предполагаю, что это указывает на переменную S –
Вторая программа не имеет переменной S. – immibis