Бесконечный цикл. Borland C++ Version 2.0 - C (СИ)
Формулировка задачи:
В Microsoft Visual Studio данный код прекрасно копмилируется.
Менюшка рабоатет.
Данный код нужно откомпилировать в Borland C++ Version 2.0
я добавил в кодЧтобы все обаотало.
При компиляции ошибок никаких нету.
При запуске получаю зацикленную отрисовку меню.
Как седалть что бы и Borland C++ Version 2.0 работало!?
Игнорирует эту строку в borland
Закоментил scanf этот.
Присвоил choice = 1
при case : 1
вывожу текст "1111111111111111111111111111"
В общем он заходит в switch, но все всеравно зацикленно все.
постоянно выводит менюшку и текст "1111111111111111111111111111"
Народ!!
Может кто знает как переписать эту менюшку по другому!!
Может это из-за стандарта старого?
void menu(); // прототип функции меню int main() { menu(); return 0; }
void menu() { char quit; quit = false; while(true) { clrscr(); int choice; printf(" -----MENU-----\n"); printf("(1) vvedite spisok \n"); printf("(2) prosmotr \n"); printf("(3) dobavlenie \n"); printf("(4) ydalenie \n"); printf("(5) exit \n"); scanf("%d", &choice); switch (choice) { case(1): if (!thelist) { createlist(thelist); printf(" the list has been created succesfully... \n"); getch(); } else { printf(" the list is already created...\n" ); getch(); } break; case(2): if (thelist) printlist(thelist); else { printf(" the list is not created...\n"); getch(); } break; case(3): if (thelist) addStudent(*thelist); else { printf(" the list is not created...\n"); getch(); } break; case 4: if (thelist) delStudent(*thelist); else { printf(" the list is not created... \n"); getch(); } break; case(5): quit = true; } if (quit == true) break; } }
enum {false, true}
scanf("%d", &choice);
Решение задачи: «Бесконечный цикл. Borland C++ Version 2.0»
textual
Листинг программы
// new.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <stdio.h> void menu(); void main() { menu(); } void menu() { char quit; quit = false; while(true) { int choice; printf(" -----MENU-----\n"); printf("(1) vvedite spisok \n"); printf("(2) prosmotr \n"); printf("(3) dobavlenie \n"); printf("(4) ydalenie \n"); printf("(5) exit \n"); scanf("%d", &choice); switch (choice) { case(1): printf(" the list has been created succesfully... \n"); break; case(2): printf(" the list is not created...\n"); break; case(3): printf(" the list is not created...\n"); break; case (4): printf(" the list is not created... \n"); break; case(5): quit = true; } if (quit == true) break; } };
Объяснение кода листинга программы
Код представляет собой консольное приложение на языке C, использующее Borland C++ Version 2.0. В основной функции программы main()
, которая вызывает функцию menu()
. Функция menu()
содержит бесконечный цикл, который продолжается до тех пор, пока пользователь не введет цифру 5.
Внутри цикла происходит запрос на ввод числа от пользователя с помощью функции scanf()
. Введенное число затем проверяется в операторе switch
. В зависимости от выбора пользователя выводится соответствующее сообщение.
Если пользователь вводит цифру 5, то переменная quit
изменяется на true
и цикл прерывается.
Список действий:
- Объявление переменных и функций.
- Вызов функции
menu()
. - В функции
menu()
объявление переменнойquit
и инициализация ее значениемfalse
. - Запуск бесконечного цикла
while(true)
. - Внутри цикла запрос на ввод числа от пользователя с помощью
scanf()
. - Оператор
switch
для обработки введенного числа. - Если пользователь вводит цифру 5, то переменная
quit
изменяется наtrue
и цикл прерывается. - Если пользователь вводит цифру 1, то выводится сообщение
the list has been created successfully...
. - Если пользователь вводит цифру 2, то выводится сообщение
the list is not created...
. - Если пользователь вводит цифру 3, то выводится сообщение
the list is not created...
. - Если пользователь вводит цифру 4, то выводится сообщение
the list is not created...
. - Если пользователь вводит цифру 5, то переменная
quit
изменяется наtrue
и цикл прерывается. - Проверка значения переменной
quit
в конце цикла. Еслиquit
равноtrue
, то цикл прерывается. - Конец функции
menu()
. - Конец функции
main()
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д