Ошибка:"Не удалось получить отладочный код" - C (СИ)

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

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

Здравствуйте, понадобилось сделать многоуровневую менюшку через switch, однако работа программы завершается сразу после ввода значения x, и выводится сообщение: "Не удалось получить отладочный код". В чем может быть проблема?
#include <iostream>
#include <stdio.h>
#include <conio.h>
using namespace std;
 
int x, y, z;
 
void level3()
{
    do
    {
      printf("unput y:");
      scanf("%d", y);
      switch(y)
      {
        case 1: printf("y1 \n" );
          break;
        case 2: printf("y2 \n" );
          break;
        case 3: printf("y1 \n" );
          break;
        case 0:
          y=0;
      }
    } while (y != 0);
}
 
void level2()
{
    do
    {
      printf("unput z:");
      scanf("%d", z);
      switch(z)
      {
        case 1: printf("z1 \n" );
          break;
        case 2: printf("z2 \n" );
          break;
        case 3: level3();
          break;
        case 0:
          z=0;
      }
    } while (z != 0);
}
 
void level1()
{
    do
    {
      printf("unput x:");
      scanf("%d", x);
      switch(x)
      {
        case 1: printf("x1 \n" );
          break;
        case 2: level2();
          break;
        case 3: printf("x3 \n" );
          break;
        case 4: printf("x4 \n" );
          break;
        case 5: printf("x5 \n" );
          break;
        case 0:
          x=0;
      }
    } while (x != 0);
}

int main()
{
  level1();
  return 0;
}

Решение задачи: «Ошибка:"Не удалось получить отладочный код"»

textual
Листинг программы
#include <stdio.h>
#include <conio.h>
 
static void Level1();
static void Level2();
static void Level3();
 
static int  ii = 0; 
static int  jj = 0; 
static int  kk = 0;
 
static void Level1()
{
   do
   {
      printf("Input ii:");
 
      scanf("%d",&ii);
 
      switch (ii)
      {
         case 1:
         {
            printf("x1\n");
            break;
         }
         case 2:
         {
            Level2();
            break;
         }
         case 3:
         {
            printf("x3\n");
            break;
         }
         case 4:
         {
            printf("x4\n");
            break;
         }
         case 5:
         {
            printf("x5\n");
            break;
         }
      }
   }
   while (ii);
}
 
static void Level2()
{
   do
   {
      printf("Input jj:");
 
      scanf("%d",&jj);
 
      switch (jj)
      {
         case 1:
         {
            printf("x1\n");
            break;
         }
         case 2:
         {
            printf("x3\n");
            break;
         }
         case 3:
         {
            Level3();
            break;
         }
         case 4:
         {
            printf("x4\n");
            break;
         }
         case 5:
         {
            printf("x5\n");
            break;
         }
      }
   }
   while (jj);
}
 
static void Level3()
{
   do
   {
      printf("Input kk:");
 
      scanf("%d",&kk);
 
      switch (kk)
      {
         case 1:
         {
            printf("x1\n");
            break;
         }
         case 2:
         {
            printf("x2\n");
            break;
         }
         case 3:
         {
            printf("x3\n");
            break;
         }
         case 4:
         {
            printf("x4\n");
            break;
         }
         case 5:
         {
            printf("x5\n");
            break;
         }
      }
   }
   while (kk);
}
 
int main(int argc,char** argv)
{
   Level1();
 
   return 0;
}

Объяснение кода листинга программы

  1. В коде используется язык программирования C.
  2. Код содержит три функции: Level1(), Level2() и Level3().
  3. В каждой из функций используется цикл do-while для повторного выполнения кода до тех пор, пока пользователь не введет ноль.
  4. В каждой функции есть оператор switch, который выполняет различные действия в зависимости от введенного пользователем числа.
  5. Каждое действие в операторе switch выводит на экран строку x1, x2, x3, x4 или x5.
  6. В функции main() вызывается функция Level1(), что приводит к выводу на экран первого набора вопросов.
  7. Возвращаемое значение функции main() равно 0, что означает успешное выполнение программы.

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


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

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

6   голосов , оценка 4.167 из 5